-
Notifications
You must be signed in to change notification settings - Fork 2
ci(test): parallelize slow provider tests in CI workflow #697
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
|
cc509ee to
d3b4a13
Compare
| giveSelector: chainsel.CANTON_LOCALNET.Selector, | ||
| giveConfig: CTFChainProviderConfig{ | ||
| NumberOfValidators: 5, | ||
| NumberOfValidators: 1, |
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 can be 1 instead of spinning up 5 validators to save some setup time.
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 optimizes CI performance by parallelizing slow provider tests that involve Docker container startup overhead.
Changes:
- Separated Aptos, Canton, TON, and TRON provider tests into dedicated jobs with appropriate timeouts (5-10 minutes)
- Reduced Canton test configuration from 5 validators to 1 for faster execution
- Configured remaining fast provider tests to run together with exclusion patterns
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| chain/canton/provider/ctf_provider_test.go | Reduced number of validators from 5 to 1 to speed up Canton tests |
| .github/workflows/pull-request-main.yml | Split single provider test job into five parallel jobs with specific timeout configurations |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Split provider tests into separate jobs to improve CI performance: - Aptos, Canton, TON, and TRON providers now run in dedicated jobs - Canton gets 10min timeout (takes ~4min), others get 5min - Remaining fast providers run together with exclusion pattern Also reduced Canton test validators from 5 to 1 for faster execution.
d3b4a13 to
d26c572
Compare
|
| # disable the checkptr runtime check due a false positive in github.com/xssnick/tonutils-go | ||
| # causing tests in ci to fail "fatal error: checkptr: pointer arithmetic result points to invalid allocation" | ||
| # https://github.com/xssnick/tonutils-go/issues/310 | ||
| go-test-cmd: go test -race -gcflags=all=-d=checkptr=0 -coverprofile=coverage.txt ./chain/ton/provider/... |
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 command has extra gcflags was that intentional?
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.
yeah ton needs the extra flag, refer to the comment # disable the checkptr runtime check due a false positive in github.com/xssnick/tonutils-go
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 existed in previous change
bytesizedroll
left a comment
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.
looks good to me





Split provider tests into separate jobs to improve CI performance:
Also reduced Canton test validators from 5 to 1 for faster execution.