mirror of
https://github.com/neovim/neovim.git
synced 2026-07-23 17:32:51 +00:00
Problem:
- The `reviewers_add`/`reviewers_remove` CI jobs checkout the repo only
for the purpose of `require('…/reviewers_add.js')`.
- `reviewers_remove` also runs on `closed`, so a merged fork PR will trip
the new allow-unsafe-pr-checkout guard of `actions/checkout@v7`.
Solution:
- Drop the use of `actions/checkout`.
- Inline the script in the CI yaml definitions.
- Also await the mutating calls (previously fire-and-forget) and guard
empty reviewer lists.
33 lines
906 B
YAML
33 lines
906 B
YAML
name: "reviewers: remove"
|
|
on:
|
|
pull_request_target:
|
|
types: [converted_to_draft, closed]
|
|
|
|
permissions: {}
|
|
|
|
jobs:
|
|
remove-reviewers:
|
|
runs-on: ubuntu-latest
|
|
permissions:
|
|
pull-requests: write
|
|
steps:
|
|
- name: 'Remove reviewers'
|
|
uses: actions/github-script@v9
|
|
with:
|
|
script: |
|
|
const { data } = await github.rest.pulls.listRequestedReviewers({
|
|
owner: context.repo.owner,
|
|
repo: context.repo.repo,
|
|
pull_number: context.issue.number,
|
|
});
|
|
const reviewers = data.users.map((e) => e.login);
|
|
|
|
if (reviewers.length) {
|
|
await github.rest.pulls.removeRequestedReviewers({
|
|
owner: context.repo.owner,
|
|
repo: context.repo.repo,
|
|
pull_number: context.issue.number,
|
|
reviewers,
|
|
});
|
|
}
|