Conversation
Signed-off-by: Simon Scatton <sscatton@nvidia.com>
Signed-off-by: Simon Scatton <sscatton@nvidia.com>
|
This PR closes the remaining design gap tracked by #2972 under the revised tmachine composition model. Tmachine now separates:
This replaces the earlier target / flow / suite model. Clean installation belongs to an installation profile, while stateful transitions such as installing N and upgrading to N+1 belong in a testsuite. The upgrade implementation remains tracked by #2975. After this PR merges, #2972 can be closed as completed. |
| } | ||
| ]; | ||
|
|
||
| scenarios = [ |
There was a problem hiding this comment.
Not critical to this PR, but did we want to rename scenarios at some point. This is basically the "baseos" and "compute backend"? (as an entry in the support matrix).
| installations = [ | ||
| { | ||
| name = "native"; | ||
| use_galaxy = false; | ||
| playbooks = [ | ||
| "ansible/playbooks/openshell.yaml" | ||
| "ansible/playbooks/gateway.yaml" | ||
| ]; | ||
| inputs = { | ||
| openshell_cli_binary = "../artifacts/binaries/${muslTarget}/openshell"; | ||
| openshell_gateway_binary = "../artifacts/binaries/${gnuTarget}/openshell-gateway"; | ||
| openshell_supervisor_image = "../artifacts/images/openshell-supervisor-tmachine.tar"; | ||
| openshell_sandbox_image = "../artifacts/images/openshell-sandbox-tmachine.tar"; | ||
| }; |
There was a problem hiding this comment.
I like this!
One question: Do we define restrictions on target scenarios here or in the playbooks themselves? For example, we can only install rpms on fedora and debs or snaps on ubuntu?
Summary
Separate tmachine runtime scenarios from named installation profiles so the same rootful or rootless setup can exercise native and package-based installs. This PR preserves the current native installation and makes the installation name explicit in the CLI and conformance workflow.
Related Issue
No issue required: internal test harness refactor with no product behavior change. Stacked on #3418.
Changes
nativeinstallation profile.tmachine installandtmachine test.Testing
mise run pre-commitpasses (skipped at author request)cargo fmt --check --manifest-path tests/tmachine/Cargo.tomlcargo check --manifest-path tests/tmachine/Cargo.tomlnix build --no-link --print-out-paths .#tmachine-confignix run .#tmachine -- test --helpactionlint .github/workflows/conformance.ymlChecklist