-
Notifications
You must be signed in to change notification settings - Fork 496
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
HDDS-8640. Support multiple acceptance test scripts with custom config #4750
Conversation
@Pochatkin @xBis7 please take a look |
@adoroszlai That's a very nice improvement. Thanks for working on this. Can we briefly document the change somewhere like Something simple like You can run an acceptance test with specific configuration by creating a |
Good point, thanks. I'd like to do it separately (HDDS-8669) to take advantage of quicker CI check for docs. |
@adoroszlai Thanks. I tested it locally by running different configuration setups consecutively and verified adding another shell script won't create any issues and that the environment variables are renewed as expected. Changes LGTM! |
+1 Thank you Attila, these changes are looking good to me. |
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.
Thanks @adoroszlai for this improvement, the changes look good to me, only thing is we need to follow naming "test-custom-config.sh" and place it in the right directory which is the same comment as above for documenting. +1 .
Thanks @Galsza, @sadanand48, @xBis7 for the review. |
What changes were proposed in this pull request?
So far each compose environment had a single test script and cluster config. If the same basic environment needs to be tested with custom configuration (e.g. different default bucket type, or using the Vault-based S3 secret store), then the environment is duplicated with minor changes.
The PR updates the acceptance test library (
testlib.sh
) to allow running more than one test script per environment. Each of these can provide their own configuration and tweaks for the cluster, in a similar way to how the profiling/monitoring extension is implemented for theozone
environment.This helps avoid duplication, and lets us merge
ozone-legacy-bucket
intoozone
, andozonesecure-vault
intoozonesecure
.https://issues.apache.org/jira/browse/HDDS-8640
How was this patch tested?
CI:
https://github.com/adoroszlai/hadoop-ozone/actions/runs/5031215247
Verified that both test scripts were executed in each of the merged environments:
https://github.com/adoroszlai/hadoop-ozone/actions/runs/5031215247/jobs/9024361030#step:5:47
https://github.com/adoroszlai/hadoop-ozone/actions/runs/5031215247/jobs/9024361030#step:5:162
https://github.com/adoroszlai/hadoop-ozone/actions/runs/5031215247/jobs/9024360968#step:5:47
https://github.com/adoroszlai/hadoop-ozone/actions/runs/5031215247/jobs/9024360968#step:5:352
Downloaded test artifacts (unsecure, secure), and verified that cluster logs for each run are separated, but there is a single summary (
log.html
, etc.):Verified that
log.html
contains the results for both test runs in each environment.Verified that the clusters for the merged tests had the expected configuration: