-
Notifications
You must be signed in to change notification settings - Fork 497
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Release notes API rate limiting throws 403 #2225
Release notes API rate limiting throws 403 #2225
Comments
/help |
@saschagrunert: Please ensure the request meets the requirements listed here. If this request no longer meets these requirements, the label can be removed In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
cc @kubernetes/release-managers |
Hi there, I am a new contributor to Kubernetes and hopped in seeing good first issue label, can you please give a little insight on how to get started working on this issue? |
Sounds great @sandipanpanda, thank you for taking this opportunity. I think a good starting point would be to reproduce the issue with the After that, we can try to catch the error in the retry logic of the release notes gatherer, which is using the go-github API. The retry logic can be found there: release/pkg/github/internal/retry.go Lines 63 to 91 in a85ab2b
|
Hi @sandipanpanda are you working on this issue? If not then I can take this up and give it a try. |
/assign |
This just burned a stage and should have higher priority. |
We now check for the `github.RateLimitError` and use its result to wait before an actual retry. This should avoid hitting the secondary rate limit, as described there: - https://docs.github.com/en/rest/overview/resources-in-the-rest-api#rate-limiting - https://docs.github.com/en/rest/guides/best-practices-for-integrators Refers to kubernetes/release#2225 Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
We now check for the `github.RateLimitError` and use its result to wait before an actual retry. This should avoid hitting the secondary rate limit, as described there: - https://docs.github.com/en/rest/overview/resources-in-the-rest-api#rate-limiting - https://docs.github.com/en/rest/guides/best-practices-for-integrators Refers to kubernetes/release#2225 Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
The last couple of releases have been hitting a new secondary rate limit in the GitHub API. This PR makes some changes to play a bit more fair with the API. Now, the notes gatherer interprets the GitHub API responde. If the secondary rate limit was hit, the functions that make a lot of calls will now sleep for a minute+random before respawning. Fixes kubernetes#2225 Fixes kubernetes#2302 Signed-off-by: Adolfo García Veytia (Puerco) <adolfo.garcia@uservers.net>
The release notes tool seems to get a new API response from GitHub if the rate limit kicks in:
Ref: https://github.com/cri-o/cri-o/runs/3422342329?check_suite_focus=true
It seems that we can mitigate by checking for the error and waiting a bit longer before trying it again.
The text was updated successfully, but these errors were encountered: