fix(e2e): align container engine selection across helpers#1944
Conversation
|
Label |
d34468c to
b6685c6
Compare
Signed-off-by: Evan Lezar <elezar@nvidia.com>
b6685c6 to
66bdf87
Compare
|
@elezar it looks like if the env vars are left unset / empty, then the rust helper will fall back to docker but the shell script will pick podman if it's installed. I'm not sure how likely it is that someone has both installed and someone bypasses the wrappers by running e2e/rust/src/harness/container.rs:228-230 Ok(explicit_engine
.or(required_engine)
.unwrap_or_else(|| "docker".to_string()))tasks/scripts/container-engine.sh:87-103 if command -v podman >/dev/null 2>&1; then
echo "podman"
return
fi |
Summary
Align container engine selection across build helpers, e2e wrappers, Rust e2e support containers, and Skaffold local image builds.
CONTAINER_ENGINE=docker|podmanis now the single explicit selector, withCONTAINER_ENGINE_TARGET=local-k8s-clusterused only for local-cluster image workflows.Related Issue
Closes #1481
Changes
tasks/scripts/container-engine.sh: explicitCONTAINER_ENGINE, e2e driver requirement, local-cluster target hint, then host auto-detection.OPENSHELL_E2E_CONTAINER_ENGINEselector and conflicting explicit engine selections.ce_info_archso malformed or unavailable engine metadata fails directly instead of falling back to host architecture.CONTAINER_ENGINE_TARGET=local-k8s-cluster.architecture/build.md.Testing
mise run pre-commitpassesCommands run:
bash -n tasks/scripts/container-engine.shbash -n e2e/with-docker-gateway.shbash -n e2e/with-podman-gateway.shgit diff --checkce_info_archmalformed metadata rejection.mise x -- cargo test --manifest-path e2e/rust/Cargo.toml --lib harness::containermise x -- cargo test --manifest-path e2e/rust/Cargo.toml --no-run --test gpu_device_selection --features e2e-gpumise x -- cargo test --manifest-path e2e/rust/Cargo.toml --no-run --test local_driver_token_restart --features e2emise run pre-commitwas attempted twice. It did not complete successfully becausehelm:lintfails on the existing chart dependency state:chart metadata is missing these dependencies: postgresql; the second run also timed out while the Rust test task was still running.Not run:
podmanis not installed on this machine.Checklist