#!/usr/bin/env bats -*- bats -*- # # tests for podman import # load helpers # bats test_tags=ci:parallel @test "podman import" { local archive=$PODMAN_TMPDIR/archive.tar local random_content=$(random_string 12) # Generate a random name and tag (must be lower-case) local random_name=x0$(random_string 12 | tr A-Z a-z) local random_tag=t0$(random_string 7 | tr A-Z a-z) local fqin=localhost/$random_name:$random_tag cname=c-import-$(safename) run_podman run --name $cname $IMAGE sh -c "echo ${random_content} > /random.txt" run_podman export $cname -o $archive run_podman rm -t 0 -f $cname # Simple import run_podman import -q $archive iid="$output" run_podman run --rm $iid cat /random.txt is "$output" "$random_content" "simple import" run_podman rmi -f $iid # Simple import via stdin run_podman import -q - < <(cat $archive) iid="$output" run_podman run --rm $iid cat /random.txt is "$output" "$random_content" "simple import via stdin" run_podman rmi -f $iid # Tagged import run_podman import -q $archive $fqin run_podman run --rm $fqin cat /random.txt is "$output" "$random_content" "tagged import" run_podman rmi -f $fqin # Tagged import via stdin run_podman import -q - $fqin < <(cat $archive) run_podman run --rm $fqin cat /random.txt is "$output" "$random_content" "tagged import via stdin" run_podman rmi -f $fqin } # Integration tag to catch future breakage in tar, e.g. #19407 # bats test_tags=distro-integration, ci:parallel @test "podman export, alter tarball, re-import" { # Create a test file following test mkdir $PODMAN_TMPDIR/tmp touch $PODMAN_TMPDIR/testfile1 echo "modified tar file" >> $PODMAN_TMPDIR/tmp/testfile2 # Create Dockerfile for test dockerfile=$PODMAN_TMPDIR/Dockerfile cat >$dockerfile <