You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 29bcc97
Browse filesBrowse the repository at this point in the historyBrowse files
test(e2e): migrate the features and drivers suites to testkit (#5137)
* test(support): add container engine and Podman support crates
Add the container-engine and podman support crates for suites that build images into the gateway's store or compare against Podman's own containers, and add expect_compute_driver and base_image to testkit. Run the support crates' unit tests in the Rust test lists.
Signed-off-by: Matthew Grossman <mgrossman@nvidia.com>
* test(features): port the OCI image suite to testkit
Rewrite tests/suites/features/oci-image as testkit tests (package oci-image) that build their images through OPENSHELL_TEST_CONTAINER_ENGINE, which the Docker and Podman environments now publish. Run it through e2e-suites.yml on the Docker rootful, Podman rootful and Podman rootless rows, and retire the tmachine oci-image testsuite, its playbook and its archive.
The OCI test images are removed by a testkit cleanup hook registered right after each build, so a panic in the test body no longer leaks them. Hooks run last registered first, so the sandboxes created from an image are deleted before it. The workspace's fmt and clippy entries now cover the whole workspace, so a new suite needs no list edit.
Signed-off-by: Matthew Grossman <mgrossman@nvidia.com>
Co-authored-by: Evan Lezar <elezar@nvidia.com>
* test(features): run the Keycloak provider-refresh suite on Fedora Podman
Add fedora-podman-{rootful,rootless}-keycloak environments and run keycloak-provider-refresh there with the rpm installer, replacing the old provider-refresh crate, its tmachine testsuite and its archive. Podman has no daemon to restart Keycloak at boot, so start the container with --restart always and enable podman-restart.service for the user that runs it.
feature-specific-integration now runs the features family through e2e-suites.yml in Branch E2E, Release Dev and Release Qualification, and absorbs Branch E2E's separate e2e-suites job.
The Keycloak support crate is renamed to keycloak-support to match the -support suffix the other support crates take. It moves here, not with them, because the suite this commit replaces depends on it by the old name.
Signed-off-by: Matthew Grossman <mgrossman@nvidia.com>
* test(drivers): port the Podman user-namespace suite to testkit
Rewrite tests/suites/drivers/podman as a testkit test (package podman) that compares a sandbox's UID map with the one Podman gives a container in the same user-namespace mode. Each fedora-podman-{rootful,rootless}-userns-<mode> environment configures that mode for the binaries installer's gateway and publishes it; the packaged installers refuse such environments rather than test without the mode.
driver-specific-integration now runs the drivers family through e2e-suites.yml, and the e2e-podman tmachine row moves to its own podman-e2e-integration job. Retire the driver-podman testsuite, its playbooks, fixtures and archive.
Each driver suite is its own workspace under tests/suites/drivers/<driver>, with its own lockfile, so a driver can be tested apart from the others. The runner's --family is the path of a workspace under tests/suites/ (drivers/podman), and each part must be a plain name. The family input of e2e-suites.yml also selects the workspaces under it, so "drivers" still selects every driver suite. The suite package is named after the driver, and the support crates take a -support suffix. Branch Checks and the rust tasks format and lint each test workspace as a whole.
The Podman support crate's reference container runs with --pull missing instead of --pull never, so it pulls the image when the engine's store doesn't have it.
Signed-off-by: Matthew Grossman <mgrossman@nvidia.com>
Co-authored-by: Evan Lezar <elezar@nvidia.com>
* test(conformance): delete the openshell-conformance crate
Every suite that used the CLI conformance library now runs on testkit, so remove the crate, its lockfile entry and its row in the AGENTS.md architecture table.
Signed-off-by: Matthew Grossman <mgrossman@nvidia.com>
---------
Signed-off-by: Matthew Grossman <mgrossman@nvidia.com>
Co-authored-by: Evan Lezar <elezar@nvidia.com>
0 commit comments