Repository navigation
test(conformance): migrate create-upload tests to file_transfer stories - #4606
Open
politerealism wants to merge 1 commit into
Conversation
Move the three `sandbox create --upload` tests from the legacy Podman e2e crate into the file_transfer conformance area as story modules. The behavior is not Podman-specific, so it belongs with the other file transfer stories and runs against any prepared gateway. Test names are unchanged so filters keep working: - create_with_upload_directory_preserves_source_basename - create_with_multiple_uploads - create_with_upload_single_file Changes from the originals: - Verify uploads by reading the files back with `sandbox exec` and comparing exact content, instead of matching the printed output of `sandbox create`. - Check the nested file in the directory story, and that the directory is not flattened into the destination. - Check each destination in the multiple-uploads story separately. - Use the default upload path. The originals passed `--no-git-ignore`, which is unnecessary outside a Git work tree and hid the default path. - Create the sandbox from the target's default image. The originals created it from the e2e test image. - Drop the claim that files arrive before the command runs. The CLI rejects `--upload` together with a command, and the docs say uploads finish after the main process starts, so each story checks the files once `create` returns and documents the limitation. Remove the now-unused `SandboxGuard::create_with_upload` and `create_with_uploads` from the legacy harness, and the old test file. Contributes to NVIDIA#3954 Signed-off-by: politerealism <burdcat17@gmail.com>
politerealism
marked this pull request as ready for review
October 15, 2026 16:36
4 of 7 tasks
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Move the three
sandbox create --uploadtests from the legacy Podman e2e crate into thefile_transferconformance area as story modules. The behavior isn't Podman-specific, so it belongs with the other file transfer stories and runs against any prepared gateway. Stacked on #4538, which relocates the suites.Related Issue
Contributes to #3954. No separate issue: this migrates existing coverage.
Changes
file_transfer/create_upload.rswith three stories, keeping the original test names so filters keep working:create_with_upload_directory_preserves_source_basename,create_with_multiple_uploadsandcreate_with_upload_single_file.sandbox execand comparing exact content. The originals matched the printed output ofsandbox create.--no-git-ignore, which isn't needed outside a Git work tree and hid the default path.--uploadtogether with a command, and the docs say uploads finish after the main process starts, so each story checks the files oncecreatereturns, and the module doc notes the limitation.e2e/rust/tests/upload_create.rsand the now-unusedSandboxGuard::create_with_uploadandcreate_with_uploadsfrom the legacy harness.Testing
mise run pre-commitpassesfile_transfertests (these three and the three existing ones) pass against a rootless Podman gateway:cargo test --manifest-path e2e/suites/conformance/Cargo.toml --test file_transfere2e,e2e-podman,e2e-docker,e2e-kubernetes,e2e-vm) still compile without warningstmachine test ubuntu-docker-rootful binaries conformance) and in the Ubuntu K3s guest (tmachine test ubuntu-k3s k3s conformance). The first Docker run is what exposed the provider-profile dependency fixed in the workspaces PR, and it also failed once on the existinglifecycle stop_start(ContainerExited: Container exited while waiting for Ready), which passed on the rerun. Each PR alone was not run in tmachine.Checklist