-
Notifications
You must be signed in to change notification settings - Fork 29
chore: rollup e2e parallel #554
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
Conversation
| build_args := $(BUILD_ARGS) | ||
|
|
||
| PACKAGES_E2E=$(shell go list ./... | grep '/itest') | ||
| PACKAGES_E2E=$(shell go list -tags=e2e_babylon ./... | grep '/itest') |
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.
this was missing, e2e were not ran in CI
| @@ -1,5 +1,4 @@ | |||
| //go:build e2e_babylon | |||
| // +build e2e_babylon | |||
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.
old style prior to go 1.17
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.
Pull Request Overview
This PR improves the end-to-end test infrastructure by reverting to quit channels for app lifecycle management, fixing Babylon e2e test discovery, and enabling parallel execution for rollup e2e tests.
- Reverts from context-based cancellation back to quit channels for finality provider lifecycle management
- Fixes Babylon e2e tests by removing duplicate build tags that prevented test discovery
- Enables parallel execution for rollup e2e tests with proper resource isolation
Reviewed Changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| itest/test-manager/base_test_manager.go | Updates EOTS manager configuration to use unique ports and shared client connections |
| itest/babylon/*.go | Removes redundant build tags to fix test discovery |
| finality-provider/service/*.go | Reverts to quit channel pattern for graceful shutdown handling |
| bsn/rollup-finality-provider/e2e/*.go | Adds parallel test execution with unique port allocation |
| Makefile | Fixes e2e test discovery by adding build tags |
| CHANGELOG.md | Documents the changes |
| // antipattern to set env in parallel tests but we only do it here | ||
| err := os.Setenv("HMAC_KEY", eotsCfg.HMACKey) | ||
| require.NoError(t, err) |
Copilot
AI
Jul 23, 2025
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.
Using os.Setenv in parallel tests can cause race conditions and affect other tests. Consider using a more isolated approach like passing the environment variable through test-specific context or configuration.
| // antipattern to set env in parallel tests but we only do it here | |
| err := os.Setenv("HMAC_KEY", eotsCfg.HMACKey) | |
| require.NoError(t, err) | |
| // Pass HMAC_KEY directly through configuration instead of setting it as an environment variable | |
| eotsCfg.HMACKey = "some-hmac-key" // Ensure HMACKey is set in the configuration |
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.
as noted in the comment bot
Uh oh!
There was an error while loading. Please reload this page.