Note
This document describes migration process from 0.7.0 to 0.8.0 Rally version. You can apply this instruction for migration to later versions, but check all references and release notes before trying to do it.
Verification Component was introduced long time ago even before the first Rally release. It started as a small helper thing but became a big powerful tool. Since it was not designed to all features that were implemented there later, it contained a lot of workarounds and hacks.
New Verification Component, which we are happy to introduce, should fix all architecture issues and improve user-experience. Unfortunately, fixing all those obsolete architecture decisions could not be done in a backward-compatible way, or it would produce much more workarounds. That is why we decided to redesign the whole component in a clear way - remove old code and write a new one from scratch.
Migration to New Verification Component should be simple and do not take too much time. You can find description of made changes below.
We completely reworked verification reports and merged comparison to main report. Now you can build one report for multiple number of verifications.
For more details follow Verification reports
Old Status | New Status | Description |
---|---|---|
init | init | Initial state. It appears instantly after calling rally verify start command before the actual run of verifier's tool. |
running | It was used right after checking status of verifier. It is redundant in terms of new design. | |
verifying | running | Identifies the process of tool execution. |
finished | finished | Previously, "finished" state was used for an identification of just finished verification. By "finished" meant that verification has any test result. Now it means that verification was executed and doesn't have failures, unexpected success or any kind of errors. |
failed | Old purpose is an identification of "errors", situations when results are empty. The right use is an identification of finished verification with tests in "failed" and "uxsuccess" (unexpected success) statuses. | |
failed | crashed | Something went wrong while launching verification. |
The latest information about verification statuses you can find at Verification statuses.
You can find the latest information about Verification Component CLI here - Command Line Interface.
Command for Rally 0.7.0 - rally verify install
$ rally verify install --deployment <uuid> --source <url> --version <vers> \
--system-wide
Command for Rally 0.8.0:
$ rally verify create-verifier --type "tempest" --source <url> \
--version <version> --system-wide --name <name>
Here you can find several important improvements:
Command for Rally 0.7.0 - rally verify reinstall
$ rally verify reinstall --deployment <uuid> --source <url> --version <vers> \
--system-wide
Command for Rally 0.8.0:
$ rally verify update-verifier --id <id> --source <url> --version <vers> \
--system-wide --no-system-wide --update-venv
Changes:
Command for Rally 0.7.0 - rally verify uninstall
$ rally verify uninstall --deployment <uuid>
Command for Rally 0.8.0:
$ rally verify delete-verifier --id <id> --deployment-id <id> --force
Changes:
Command for Rally 0.7.0 - rally verify installplugin
$ rally verify installplugin --deployment <uuid> --source <url> \
--version <vers> --system-wide
Command for Rally 0.8.0:
$ rally verify add-verifier-ext --id <id> --source <url> --version <vers> \
--extra-settings <data>
Changes:
Command for Rally 0.7.0 - rally verify uninstallplugin
$ rally verify uninstallplugin --deployment <uuid> --repo-name <repo_name> \
--system-wide
Command for Rally 0.8.0:
$ rally verify delete-verifier-ext --id <id> --name <name>
Changes:
Command for Rally 0.7.0 - rally verify listplugins
$ rally verify listplugins --deployment <uuid> --system-wide
Command for Rally 0.8.0:
$ rally verify list-verifier-exts --id <id>
Changes:
Command for Rally 0.7.0 - rally verify discover
$ rally verify discover --deployment <uuid> --system-wide --pattern <pattern>
Command for Rally 0.8.0:
$ rally verify list-verifier-tests --id <id> --pattern <pattern>
Changes:
Commands for Rally 0.7.0:
The command for generating configs rally verify genconfig
$ rally verify genconfig --deployment <uuid> --tempest-config <path> \
--add-options <path> --override
The command for showing configs rally verify showconfig
$ rally verify showconfig --deployment <uuid>
Command for Rally 0.8.0:
$ rally verify configure-verifier --id <id> --deployment-id <uuid> \
--extend <path/json/yaml> --override <path> --reconfigure --show
Changes:
The argument --override replaces old --tempest-config name. First of all, argument name "override" is a unified word without alignment to any tool. Also, it describes in the best way the meaning of the action: use client specified configuration file.
The argument --extend replaces old --add-options. It accepts a path to config in INI format or JSON/YAML string. In future, it will be extended with the ability to specify a path to JSON/YAML file.
The argument --reconfigure replaces old --override. It means that existing file will be ignored and new one will be used/created.
If the argument --show is specified, a configuration of verifier will be displayed at the end of command execution.
Note
We do not have a separate command for showing configurations anymore. rally verify configure-verifier --show shows an existing configuration if it exists and --reconfigure argument is not specified
Command for Rally 0.7.0 - rally verify showconfig
$ rally verify showconfig --deployment <uuid>
Command for Rally 0.8.0:
$ rally verify configure-verifier --id <id> --deployment-id <uuid> --show
Changes:
We do not have a separate command for that task. rally verify configure-verifier --show shows an existing configuration (if it exists) if --reconfigure argument is not specified.
Command for Rally 0.7.0 - rally verify start
$ rally verify start --deployment <uuid> --set <set_name> --regex <regex> \
--load-list <path> --tests-file <path> --skip-list <path> \
--tempest-config <path> --xfail-list <path> --system-wide \
--concurrency <N> --failing --no-use
Command for Rally 0.8.0:
$ rally verify start --id <id> --deployment-id <uuid> --pattern <pattern> \
--load-list <path> --skip-list <path> --xfail-list <path> \
--concurrency <N> --no-use --detailed
Changes:
Commands for Rally 0.7.0:
The command for showing results of verification rally verify show
$ rally verify show --uuid <uuid> --sort-by <query> --detailed
Separate command which calls rally verify show with hardcoded --detailed flag rally verify showconfig
$ rally verify detailed --uuid <uuid> --sort-by <query>
Command for Rally 0.8.0:
$ rally verify show --uuid <uuid> --sort-by <query> --detailed
Changes:
Command for Rally 0.7.0 - rally verify list
$ rally verify list
Command for Rally 0.8.0:
$ rally verify list --id <id> --deployment-id <id> --status <status>
Changes:
You can filter verifications by verifiers, by deployments and results statuses.
Command for Rally 0.7.0 - rally verify import
$ rally verify import --deployment <uuid> --set <set_name> --file <path> --no-use
Command for Rally 0.8.0:
$ rally verify import --id <id> --deployment-id <uuid> --file <path> \
--run-args <run_args> --no-use
Changes:
Commands for Rally 0.7.0:
The command for building HTML/JSON reports of verification rally verify results
$ rally verify results --uuid <uuid> --html --json --output-file <path>
The command for comparison two verifications rally verify compare
$ rally verify compare --uuid-1 <uuid_1> --uuid-2 <uuid_2> --csv --html \
--json --output-file <output_file> --threshold <threshold>
Command for Rally 0.8.0:
$ rally verify report --uuid <uuid> --type <type> --to <destination> --open
Changes:
Building reports becomes pluggable. You can extend reporters types. See Verification reports for more details.
The argument --type expects type of report (HTML/JSON). There are no more separate arguments for each report type.
Hint
You can list all supported types, executing rally plugin list --plugin-base VerificationReporter command.
Reports are not aligned to only local types, so the argument --to replaces --output-file. In case of HTML/JSON reports, it can include a path to the local file like it was previously or URL to some external system with credentials like https://username:password@example.com:777.
The comparison is embedded into main reports and it is not limited by two verifications results. There are no reasons for the separate command for that task.