-
Notifications
You must be signed in to change notification settings - Fork 41
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
Feat: support retries in e2e tests in CI #2145
Conversation
edbd7d3
to
24062de
Compare
e752dd4
to
2724af6
Compare
2724af6
to
3520b73
Compare
df45fe3
to
7676e66
Compare
2301030
to
01bd176
Compare
4154bff
to
d78c7a3
Compare
d78c7a3
to
8807497
Compare
8807497
to
e59d250
Compare
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.
LGTM 🚀, just some minor details and a question relating user cancellation.
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.
LGTM
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.
LGTM 👍
a528655
to
1e7719c
Compare
* mithril-end-to-end from `0.4.49` to `0.4.50`
1e7719c
to
fcb728e
Compare
Content
This PR includes support for retrying e2e test runs in case of transient error on the Cardano network of the underlying devnet (which happen because of the custom configuration used for it). This will overall remove the main source of flakiness in the CI runs.
Error handling improvements:
mithril-test-lab/mithril-end-to-end/src/devnet/runner.rs
: IntroducedUnrecoverableDevnetError
and updated error handling inimpl Devnet
to use this new error type.Main execution flow restructuring:
mithril-test-lab/mithril-end-to-end/src/main.rs
: Refactored the main function to use a newAppResult
enum for handling different exit codes and added implementation forTermination
to map results to exit codes.Enhancements to GitHub workflows:
.github/workflows/backward-compatibility.yml
: Added retry logic to the E2E tests usingnick-fields/retry@v3
..github/workflows/ci.yml
: Added retry logic to the Test job usingnick-fields/retry@v3
.Examples
Here is an example of retry in the CI:
Pre-submit checklist
Issue(s)
Closes #2123