From cdae49be404cedce1c2f31ca836aa7162364bd70 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Sat, 27 Jun 2026 11:47:52 +0200 Subject: [PATCH] ci: update workflows for breaking actions/checkout change Problem: actions/checkout@v7 refuses to checkout fork pull request code on `pull_request_target` trigger, breaking backport and reviewers-remove workflows on external PRs. Solution: * backport: Checkout the merged-into base branch by name. * reviewers-remove: inline script so no checkout needed. --- .github/scripts/reviewers_remove.js | 16 ---------------- .github/workflows/backport.yml | 3 +++ .github/workflows/reviewers_remove.yml | 24 +++++++++++++++--------- 3 files changed, 18 insertions(+), 25 deletions(-) delete mode 100644 .github/scripts/reviewers_remove.js diff --git a/.github/scripts/reviewers_remove.js b/.github/scripts/reviewers_remove.js deleted file mode 100644 index 9e44e4ac8..000000000 --- a/.github/scripts/reviewers_remove.js +++ /dev/null @@ -1,16 +0,0 @@ -module.exports = async ({ github, context }) => { - const requestedReviewers = await github.rest.pulls.listRequestedReviewers({ - owner: context.repo.owner, - repo: context.repo.repo, - pull_number: context.issue.number, - }); - - const reviewers = requestedReviewers.data.users.map((e) => e.login); - - github.rest.pulls.removeRequestedReviewers({ - owner: context.repo.owner, - repo: context.repo.repo, - pull_number: context.issue.number, - reviewers: reviewers, - }); -}; diff --git a/.github/workflows/backport.yml b/.github/workflows/backport.yml index 691bd8e10..b713a1372 100644 --- a/.github/workflows/backport.yml +++ b/.github/workflows/backport.yml @@ -15,6 +15,9 @@ jobs: steps: - name: Checkout repository uses: actions/checkout@v7.0.0 + with: + persist-credentials: true + ref: ${{ github.event.pull_request.base.ref }} - name: Create app token uses: actions/create-github-app-token@v3 diff --git a/.github/workflows/reviewers_remove.yml b/.github/workflows/reviewers_remove.yml index 5c97f0171..60bc4b6b6 100644 --- a/.github/workflows/reviewers_remove.yml +++ b/.github/workflows/reviewers_remove.yml @@ -11,15 +11,21 @@ jobs: remove-reviewers: runs-on: ubuntu-latest steps: - - name: Checkout script - uses: actions/checkout@v7.0.0 - with: - sparse-checkout: .github/scripts/reviewers_remove.js - sparse-checkout-cone-mode: false - - - name: Run script + - name: Remove reviewers uses: actions/github-script@v9 with: script: | - const script = require('./.github/scripts/reviewers_remove.js') - await script({github, context}) + const requestedReviewers = await github.rest.pulls.listRequestedReviewers({ + owner: context.repo.owner, + repo: context.repo.repo, + pull_number: context.issue.number, + }); + + const reviewers = requestedReviewers.data.users.map((e) => e.login); + + github.rest.pulls.removeRequestedReviewers({ + owner: context.repo.owner, + repo: context.repo.repo, + pull_number: context.issue.number, + reviewers: reviewers, + });