-
Notifications
You must be signed in to change notification settings - Fork 4.4k
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
Automated test framework can run scripts on launched clusters. Add offline stake operations test case and script. #8510
Automated test framework can run scripts on launched clusters. Add offline stake operations test case and script. #8510
Conversation
@garious I |
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.
Nice! Got a way to ensure this doesn't bitrot? If it executes super fast, it'd be good to see this in CI. Otherwise, part of a nightly run.
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. |
8576829
to
5020657
Compare
Depends on: #8780 Working this stake integration script into a nightly run as part of a larger test framework refactor. |
0964933
to
43e6151
Compare
eb3b131
to
6541003
Compare
6541003
to
e6cc249
Compare
4666792
to
9eac83c
Compare
30855b8
to
b8ec80d
Compare
b8ec80d
to
813bf2d
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.
Lookin' good! Just a couple Qs
system-test/stake-operations-testcases/offline_stake_operations.sh
Outdated
Show resolved
Hide resolved
@@ -6,11 +6,12 @@ steps: | |||
CLOUD_PROVIDER: "colo" | |||
TESTNET_TAG: "colo-perf-cpu-only" | |||
ENABLE_GPU: "false" | |||
TEST_DURATION_SECONDS: 30 | |||
TEST_DURATION_SECONDS: 60 |
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.
Are the config changes besides the TEST_TYPE
additions intentional or debug artifacts?
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.
Debug artifacts mostly. I just threw the "sanity-testcases" dir in there to run short tests that exercise the functionality of the testing framework, rather than the limits of the cluster. So I can point a buildkite job on a PR against this file rather than an expensive/long nightly-style testcase.
dacfc39
to
2ebecfd
Compare
system-test/stake-operations-testcases/offline_stake_operations.sh
Outdated
Show resolved
Hide resolved
2ebecfd
to
81527f5
Compare
Problem
Summary of Changes
Re-factor the automation framework to be able to run arbitrary scripts on a configurable testnet after the cluster has launched. (
system-test/stake-operations-testcases/offline_stake_colo.yml
is an example of a testcase that calls aCUSTOM_SCRIPT
after successful cluster launch.)Distinguish between testcases that should run a sleep time, partition looping logic, or a script
Create test script (
system-test/stake-operations-testcases/offline_stake_operations.sh
) that points at a running cluster and uses a nonce account and the offline signing workflow to do all staking operations. This can be run from the automation framework or manually without any environment dependencies, other than havingsolana
andsolana-keygen
in yourPATH
.Add a buildkite-readable testcase to wrap up the creation of a colo or GCE testnet and run the stake operations against it.
Add
SKIP_PERF_RESULTS
flag to buildkite testcases to skip printing TPS, confirmation time and slot rate for non-performance (ie staking ops) cases where we don't care about those values. Reducing output clutter.Fixes #6194