Skip to content

Commit 6b86dcb

Browse files
Pigbibicodex
andcommitted
fix Dependabot review request races
Co-Authored-By: Codex <noreply@openai.com>
1 parent 1932192 commit 6b86dcb

1 file changed

Lines changed: 21 additions & 4 deletions

File tree

.github/workflows/dependabot_review_request_cleanup.yml

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,13 @@ jobs:
3030
REVIEWER: Pigbibi
3131
run: |
3232
set -euo pipefail
33+
latest_review_request_actor() {
34+
gh api --paginate \
35+
"repos/${GITHUB_REPOSITORY}/issues/${PR_NUMBER}/timeline?per_page=100" |
36+
jq -sr --arg reviewer "${REVIEWER}" \
37+
'[.[][] | select(.event == "review_requested" and .requested_reviewer.login == $reviewer)][-1].actor.login // ""'
38+
}
39+
3340
review_requests="$(gh pr view "${PR_NUMBER}" \
3441
--repo "${GITHUB_REPOSITORY}" \
3542
--json reviewRequests \
@@ -39,9 +46,7 @@ jobs:
3946
exit 0
4047
fi
4148
42-
latest_request_actor="$(gh api \
43-
"repos/${GITHUB_REPOSITORY}/issues/${PR_NUMBER}/timeline?per_page=100" \
44-
--jq '[.[] | select(.event == "review_requested" and .requested_reviewer.login == "Pigbibi")][-1].actor.login // ""')"
49+
latest_request_actor="$(latest_review_request_actor)"
4550
case "${latest_request_actor}" in
4651
'dependabot[bot]'|'app/dependabot') ;;
4752
*)
@@ -53,4 +58,16 @@ jobs:
5358
gh api --method DELETE \
5459
"repos/${GITHUB_REPOSITORY}/pulls/${PR_NUMBER}/requested_reviewers" \
5560
-f "reviewers[]=${REVIEWER}"
56-
echo "Dismissed Dependabot review request for ${REVIEWER}." >> "${GITHUB_STEP_SUMMARY}"
61+
62+
latest_request_actor="$(latest_review_request_actor)"
63+
case "${latest_request_actor}" in
64+
'dependabot[bot]'|'app/dependabot')
65+
echo "Dismissed Dependabot review request for ${REVIEWER}." >> "${GITHUB_STEP_SUMMARY}"
66+
;;
67+
*)
68+
gh api --method POST \
69+
"repos/${GITHUB_REPOSITORY}/pulls/${PR_NUMBER}/requested_reviewers" \
70+
-f "reviewers[]=${REVIEWER}"
71+
echo "Restored review request made by ${latest_request_actor:-<unknown>}." >> "${GITHUB_STEP_SUMMARY}"
72+
;;
73+
esac

0 commit comments

Comments
 (0)