diff --git a/ci/request-reviews/process-reviewers.sh b/ci/request-reviews/process-reviewers.sh index b70a1a7fc4519..e1051cdc93cfb 100755 --- a/ci/request-reviews/process-reviewers.sh +++ b/ci/request-reviews/process-reviewers.sh @@ -19,11 +19,13 @@ baseRepo=$1 prNumber=$2 prAuthor=$3 +org=${baseRepo%%/*} + tmp=$(mktemp -d) trap 'rm -rf "$tmp"' exit declare -A users=() -while read -r handle; do +while read -r handle && [[ -n "$handle" ]]; do users[$handle]= done @@ -47,6 +49,16 @@ while read -r user; do fi done < "$tmp/already-reviewed-by" +for user in "${!users[@]}"; do + if ! gh api \ + -H "Accept: application/vnd.github+json" \ + -H "X-GitHub-Api-Version: 2022-11-28" \ + "/orgs/$org/members/$user" >&2; then + log "User $user is not part of the $org org, probably missed the automated invite (see https://github.com/NixOS/nixpkgs/issues/234293), ignoring.." + unset 'users[$user]' + fi +done + # Turn it into a JSON for the GitHub API call to request PR reviewers jq -n \ --arg users "${!users[*]}" \