# Copyright The OpenTelemetry Authors
# SPDX-License-Identifier: Apache-2.0
# adds a label to a pull request if certain files are changed
name: Label Pull Requests

on:
  pull_request_target:
    types: [opened, synchronize, reopened]

jobs:
  label:
    runs-on: ubuntu-latest
    permissions:
      pull-requests: write
      contents: read
    steps:
      - name: Checkout
        uses: actions/checkout@v2

      - name: Check for changed files
        id: file_changes
        uses: dorny/paths-filter@v2
        with:
          list-files: shell
          filters: |
            docsUpdateRequired:
              - 'src/flagd/**'
            helmUpdateRequired:
              - '.env'
              - 'docker-compose*.yml'
              - 'src/flagd/**'
              - 'src/grafana/**'
              - 'src/otelcollector/**'
              - 'src/prometheus/**'

      - name: "Add Label: docs-update-required"
        if: steps.file_changes.outputs.docsUpdateRequired == 'true'
        uses: actions/github-script@v7
        with:
          script: |
            const issue_number = context.issue.number;
            github.rest.issues.addLabels({
              issue_number: issue_number,
              owner: context.repo.owner,
              repo: context.repo.repo,
              labels: ['docs-update-required']
            })

      - name: "Add Label: helm-update-required"
        if: steps.file_changes.outputs.helmUpdateRequired == 'true'
        uses: actions/github-script@v7
        with:
          script: |
            const issue_number = context.issue.number;
            github.rest.issues.addLabels({
              issue_number: issue_number,
              owner: context.repo.owner,
              repo: context.repo.repo,
              labels: ['helm-update-required']
            })