-
Notifications
You must be signed in to change notification settings - Fork 5.6k
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
[spaceship] also catch and handle "Gateway Timeout" #13255
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we have this actually raise a new error called GatewayTimeoutError
? 😊 A gateway error and internal service error will get handled the same way but it feels a bit dangerous to have the gateway error map to the InternalServerError
and have the same error message as the InternalServerError
.
I think it would be ideal if we could get this mapped to a new error 💪
I don't understand what's dangerous about it? They're both the same "in read" error. |
@tmm1 A gateway timeout error (504) is inherently different from an internal server error (500) where an 500 happens at an application level and a 504 happens at some network level. I would suggest adding a new conditional with something like... raise GatewayTimeoutInReadError, "Received an \"Gateway Timeout - In Read\" from App Store Connect / Developer Portal, please try again later" as this error message will get printed out to the user. We do not want to map a "Gateway Timeout" as an "Internal Server Error". To then account for this in the retry, we would add This should have the same end result as your initial fix but this will present the proper error message to the end user if the retries are not successful |
Okay I can make those changes this week. Feel free to commit on this PR directly if you would like. |
@tmm1 Can you give me permission to push to this branch? There should be some permission option on the right side of the page I believe 🤔 Thanks! |
It's enabled already. Are you not able to push to my branch? |
I guess maybe it only works for "Maintainers"? |
So there's good news and bad news. 👍 The good news is that everyone that needs to sign a CLA (the pull request submitter and all commit authors) have done so. Everything is all good there. 😕 The bad news is that it appears that one or more commits were authored or co-authored by someone other than the pull request submitter. We need to confirm that all authors are ok with their commits being contributed to this project. Please have them confirm that here in the pull request. Note to project maintainer: This is a terminal state, meaning the |
@tmm1 Whoops! Was pushing to |
61f078d
to
e449176
Compare
e449176
to
1a9c800
Compare
1a9c800
to
f7c7837
Compare
👍🏼 LGTM |
Congratulations! 🎉 This was released as part of fastlane 2.103.0 🚀 |
* [spaceship] catch more internal server errors * Added new GatewayTimeoutError and tests for catching common errors
Checklist
bundle exec rspec
from the root directory to see all new and existing tests passbundle exec rubocop -a
to ensure the code style is validMotivation and Context
fixes #13241