From b728cf43d97814df43f5d9bd9dafac9072ccd9e8 Mon Sep 17 00:00:00 2001 From: Matt Sturgeon Date: Thu, 10 Jul 2025 13:45:29 +0100 Subject: [PATCH] ci/tag-maintainers: don't remove review requests We can't distinguish between manual review requests and requests created by CI, so let's avoid removing any review requests. --- .github/workflows/tag-maintainers.yml | 39 --------------------------- 1 file changed, 39 deletions(-) diff --git a/.github/workflows/tag-maintainers.yml b/.github/workflows/tag-maintainers.yml index 24614a1e..c6c77ddd 100644 --- a/.github/workflows/tag-maintainers.yml +++ b/.github/workflows/tag-maintainers.yml @@ -135,45 +135,6 @@ jobs: echo "new_reviewers=${NEW_REVIEWERS_LIST% }" >> "$GITHUB_OUTPUT" echo "New reviewers to add: ${NEW_REVIEWERS_LIST% }" - # Remove reviewers who are no longer maintainers of the changed files. - - name: Remove outdated reviewers - env: - GH_TOKEN: ${{ steps.app-token.outputs.token || secrets.GITHUB_TOKEN }} - MAINTAINERS: ${{ steps.extract-maintainers.outputs.maintainers }} - PENDING_REVIEWERS: ${{ steps.current-reviewers.outputs.pending_reviewers }} - REPO: ${{ github.repository }} - PR_NUM: ${{ github.event.pull_request.number }} - run: | - remove_reviewers() { - local reviewers_to_remove="$1" - local reason="$2" - for REVIEWER in $reviewers_to_remove; do - echo "Removing review request from $REVIEWER ($reason)" - REVIEWER_JSON=$(jq -n -c --arg r "$REVIEWER" '{reviewers: [$r]}') - gh api --method DELETE "/repos/$REPO/pulls/$PR_NUM/requested_reviewers" \ - --input - <<< "$REVIEWER_JSON" > /dev/null - done - } - - # If no maintainers were found for the current set of files, remove all pending reviewers. - if [[ -z "$MAINTAINERS" ]]; then - if [[ -n "$PENDING_REVIEWERS" ]]; then - echo "No plugin maintainers found, removing all pending reviewers." - remove_reviewers "$PENDING_REVIEWERS" "no longer a maintainer of changed files" - fi - exit 0 - fi - - # Find reviewers who are in the pending list but NOT in the current maintainer list. - CURRENT_MAINTAINERS=$(echo "$MAINTAINERS" | tr ' ' '\n' | sort -u) - OUTDATED_REVIEWERS=$(comm -23 <(echo "$PENDING_REVIEWERS" | tr ' ' '\n' | sort -u) <(echo "$CURRENT_MAINTAINERS")) - - if [[ -n "$OUTDATED_REVIEWERS" ]]; then - remove_reviewers "$OUTDATED_REVIEWERS" "no longer a maintainer of changed files" - else - echo "No outdated reviewers to remove." - fi - # Add the new, filtered list of maintainers as reviewers to the PR. - name: Add new reviewers env: