diff --git a/.github/workflows/pr-labels.yaml b/.github/workflows/pr-labels.yaml deleted file mode 100644 index 82f9ac97..00000000 --- a/.github/workflows/pr-labels.yaml +++ /dev/null @@ -1,56 +0,0 @@ -name: Manage labels based on PR body - -on: - pull_request_target: - types: [opened, edited, reopened, synchronize] - -jobs: - manage-labels: - runs-on: ubuntu-latest - steps: - - name: Analyze PR Body and manage labels - shell: bash - run: | - body=$(jq -r '.pull_request.body' "$GITHUB_EVENT_PATH") - labels_to_add=() - labels_to_remove=() - declare -A label_checks=( - ["New feature"]="enhancement" - ["Bug fix|Hotfix|Security patch"]="bug" - ["Documentation update"]="documentation" - ["Refactoring"]="refactor" - ["UI/UX improvement"]="UI/UX" - ) - for pattern in "${!label_checks[@]}"; do - label="${label_checks[$pattern]}" - if echo "$body" | grep -Eq "\- \[x\] ($pattern)"; then - labels_to_add+=("$label") - else - labels_to_remove+=("$label") - fi - done - - echo "LABELS_TO_ADD=$(IFS=,; echo "${labels_to_add[*]}")" >> $GITHUB_ENV - echo "LABELS_TO_REMOVE=$(IFS=,; echo "${labels_to_remove[*]}")" >> $GITHUB_ENV - - - name: Add labels if necessary - if: env.LABELS_TO_ADD != '' - run: | - IFS=',' read -ra labels <<< "${LABELS_TO_ADD}" - for label in "${labels[@]}"; do - curl -s -X POST \ - -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \ - -H "Accept: application/vnd.github.v3+json" \ - -d "{\"labels\": [\"$label\"]}" \ - https://api.github.com/repos/${{ github.repository }}/issues/${{ github.event.pull_request.number }}/labels - done - - name: Remove labels if necessary - if: env.LABELS_TO_REMOVE != '' - run: | - IFS=',' read -ra labels <<< "${LABELS_TO_REMOVE}" - for label in "${labels[@]}"; do - curl -s -X DELETE \ - -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \ - -H "Accept: application/vnd.github.v3+json" \ - https://api.github.com/repos/${{ github.repository }}/issues/${{ github.event.pull_request.number }}/labels/$label - done