log "PR is already reviewed by these teams: ${teamReviewers[*]}"
for team in"${teamReviewers[@]}";do
if[[-v teams[${team,,}]]];then
log "Avoiding review request for team $team, who has already left a review"
unset'teams[${team,,}]'
fi
done
log -e"Checking that all users/teams can be requested for review"
for user in"${!users[@]}";do
if! gh api \
-H"Accept: application/vnd.github+json"\
-H"X-GitHub-Api-Version: 2022-11-28"\
"/repos/$baseRepo/collaborators/$user">&2;then
log "User $user is not a repository collaborator, probably missed the automated invite to the maintainers team (see <https://github.com/NixOS/nixpkgs/issues/234293>), ignoring"
if! gh api "/repos/$baseRepo/collaborators/$user">&2;then
log "User $user cannot be requested for review because they don't exist or are not a repository collaborator, ignoring. Probably missed the automated invite to the maintainers team (see <https://github.com/NixOS/nixpkgs/issues/234293>)"
unset'users[$user]'
fi
done
for team in"${!teams[@]}";do
if! gh api "/orgs/$org/teams/$team/repos/$baseRepo">&2;then
log "Team $team cannot be requested for review because it doesn't exist or has no repository permissions, ignoring. Probably wasn't added to the nixpkgs-maintainers team (see https://github.com/NixOS/nixpkgs/tree/master/maintainers#maintainer-teams)"
unset'teams[$team]'
fi
done
if[["${#users[@]}"-gt 10 ]];then
log "Too many reviewers (${!users[*]}), skipping review requests"
log "Would request reviews from users: ${!users[*]}"
log "Would request reviews from teams: ${!teams[*]}"