mirror of
https://github.com/containers/podman.git
synced 2025-06-21 01:19:15 +08:00
Friendly amendment for pr 6751
More robust system test for podman run/create docker-archive Signed-off-by: Ed Santiago <santiago@redhat.com>
This commit is contained in:
@ -202,16 +202,44 @@ echo $rand | 0 | $rand
|
||||
}
|
||||
|
||||
@test "podman run docker-archive" {
|
||||
tmpdir=$PODMAN_TMPDIR/run-archive
|
||||
mkdir -p $tmpdir
|
||||
archive=$tmpdir/archive.tar
|
||||
# Create an image that, when run, outputs a random magic string
|
||||
expect=$(random_string 20)
|
||||
run_podman run --name myc --entrypoint="[\"/bin/echo\",\"$expect\"]" $IMAGE
|
||||
is "$output" "$expect" "podman run --entrypoint echo-randomstring"
|
||||
|
||||
run_podman save $IMAGE -o $archive
|
||||
# Save it as a tar archive
|
||||
run_podman commit myc myi
|
||||
archive=$PODMAN_TMPDIR/archive.tar
|
||||
run_podman save myi -o $archive
|
||||
is "$output" "" "podman save"
|
||||
|
||||
run_podman run docker-archive:$archive ls
|
||||
# Clean up image and container from container storage...
|
||||
run_podman rmi myi
|
||||
run_podman rm myc
|
||||
|
||||
# Also make sure create eats the archive as well
|
||||
run_podman create docker-archive:$archive ls
|
||||
# ... then confirm we can run from archive. This re-imports the image
|
||||
# and runs it, producing our random string as the last line.
|
||||
run_podman run docker-archive:$archive
|
||||
is "${lines[0]}" "Getting image source signatures" "podman run docker-archive, first line of output"
|
||||
is "$output" ".*Copying blob" "podman run docker-archive"
|
||||
is "$output" ".*Copying config" "podman run docker-archive"
|
||||
is "$output" ".*Writing manifest" "podman run docker-archive"
|
||||
is "${lines[-1]}" "$expect" "podman run docker-archive: expected random string output"
|
||||
|
||||
# Clean up container as well as re-imported image
|
||||
run_podman rm -a
|
||||
run_podman rmi myi
|
||||
|
||||
# Repeat the above, with podman-create and podman-start.
|
||||
run_podman create docker-archive:$archive
|
||||
cid=${lines[-1]}
|
||||
|
||||
run_podman start --attach $cid
|
||||
is "$output" "$expect" "'podman run' of 'podman-create docker-archive'"
|
||||
|
||||
# Clean up.
|
||||
run_podman rm $cid
|
||||
run_podman rmi myi
|
||||
}
|
||||
|
||||
# vim: filetype=sh
|
||||
|
Reference in New Issue
Block a user