fix: too_many_open_prs() fails without SSO access

This commit is contained in:
Elijah Olmos 2024-11-15 16:25:06 -07:00
parent 41be66fc2a
commit 4653d5889e
No known key found for this signature in database
GPG Key ID: 6A473E603BE90261

View File

@ -921,25 +921,31 @@ module GitHub
}
EOS
puts
puts "In too_many_open_prs"
homebrew_prs_count = 0
API.paginate_graphql(query) do |result|
data = result.fetch("viewer")
github_user = data.fetch("login")
begin
API.paginate_graphql(query) do |result|
data = result.fetch("viewer")
github_user = data.fetch("login")
# BrewTestBot can open as many PRs as it wants.
return false if github_user.casecmp?("brewtestbot")
# BrewTestBot can open as many PRs as it wants.
return false if github_user.casecmp?("brewtestbot")
pull_requests = data.fetch("pullRequests")
return false if pull_requests.fetch("totalCount") < MAXIMUM_OPEN_PRS
pull_requests = data.fetch("pullRequests")
return false if pull_requests.fetch("totalCount") < MAXIMUM_OPEN_PRS
homebrew_prs_count += pull_requests.fetch("nodes").count do |node|
node.dig("baseRepository", "owner", "login").casecmp?("homebrew")
homebrew_prs_count += pull_requests.fetch("nodes").count do |node|
node.dig("baseRepository", "owner", "login").casecmp?("homebrew")
end
return true if homebrew_prs_count >= MAXIMUM_OPEN_PRS
pull_requests.fetch("pageInfo")
end
return true if homebrew_prs_count >= MAXIMUM_OPEN_PRS
pull_requests.fetch("pageInfo")
rescue => e
# Ignore SAML access errors (https://github.com/Homebrew/brew/issues/18610)
raise unless e.message.casecmp?("SAML")
end
false