mirror of
https://github.com/containers/skopeo.git
synced 2026-07-14 13:48:32 +00:00
This patch will allow commands like buildah run $ctr ls -lZ / To work correctly. Need to update vendor of urfave cli. Also changed all commands to no longer accept global options after the COMMAND. Single boolean options can now be passed together. Signed-off-by: Daniel J Walsh <dwalsh@redhat.com> Closes: #493 Approved by: rhatdan
116 lines
4.1 KiB
Bash
116 lines
4.1 KiB
Bash
#!/usr/bin/env bats
|
|
|
|
load helpers
|
|
|
|
@test "from" {
|
|
cid=$(buildah from --pull --signature-policy ${TESTSDIR}/policy.json alpine)
|
|
buildah rm $cid
|
|
cid=$(buildah from --pull --signature-policy ${TESTSDIR}/policy.json scratch)
|
|
buildah rm $cid
|
|
cid=$(buildah from --pull --signature-policy ${TESTSDIR}/policy.json --name i-love-naming-things alpine)
|
|
buildah rm i-love-naming-things
|
|
}
|
|
|
|
@test "from-defaultpull" {
|
|
cid=$(buildah from --signature-policy ${TESTSDIR}/policy.json alpine)
|
|
buildah rm $cid
|
|
}
|
|
|
|
@test "from-scratch" {
|
|
cid=$(buildah from --pull=false --signature-policy ${TESTSDIR}/policy.json scratch)
|
|
buildah rm $cid
|
|
cid=$(buildah from --pull=true --signature-policy ${TESTSDIR}/policy.json scratch)
|
|
buildah rm $cid
|
|
}
|
|
|
|
@test "from-nopull" {
|
|
run buildah from --pull=false --signature-policy ${TESTSDIR}/policy.json alpine
|
|
[ "$status" -eq 1 ]
|
|
}
|
|
|
|
@test "mount" {
|
|
cid=$(buildah from --pull --signature-policy ${TESTSDIR}/policy.json scratch)
|
|
root=$(buildah mount $cid)
|
|
buildah unmount $cid
|
|
root=$(buildah mount $cid)
|
|
touch $root/foobar
|
|
buildah unmount $cid
|
|
buildah rm $cid
|
|
}
|
|
|
|
@test "by-name" {
|
|
cid=$(buildah from --pull --signature-policy ${TESTSDIR}/policy.json --name scratch-working-image-for-test scratch)
|
|
root=$(buildah mount scratch-working-image-for-test)
|
|
buildah unmount scratch-working-image-for-test
|
|
buildah rm scratch-working-image-for-test
|
|
}
|
|
|
|
@test "commit" {
|
|
createrandom ${TESTDIR}/randomfile
|
|
createrandom ${TESTDIR}/other-randomfile
|
|
|
|
cid=$(buildah from --pull --signature-policy ${TESTSDIR}/policy.json scratch)
|
|
root=$(buildah mount $cid)
|
|
cp ${TESTDIR}/randomfile $root/randomfile
|
|
buildah unmount $cid
|
|
buildah commit --signature-policy ${TESTSDIR}/policy.json $cid containers-storage:new-image
|
|
buildah rm $cid
|
|
|
|
newcid=$(buildah from new-image)
|
|
newroot=$(buildah mount $newcid)
|
|
test -s $newroot/randomfile
|
|
cmp ${TESTDIR}/randomfile $newroot/randomfile
|
|
cp ${TESTDIR}/other-randomfile $newroot/other-randomfile
|
|
buildah commit --signature-policy ${TESTSDIR}/policy.json $newcid containers-storage:other-new-image
|
|
# Not an allowed ordering of arguments and flags. Check that it's rejected.
|
|
run buildah commit $newcid --signature-policy ${TESTSDIR}/policy.json containers-storage:rejected-new-image
|
|
[ "$status" -eq 1 ]
|
|
buildah commit --signature-policy ${TESTSDIR}/policy.json $newcid containers-storage:another-new-image
|
|
buildah commit --signature-policy ${TESTSDIR}/policy.json $newcid yet-another-new-image
|
|
buildah commit --signature-policy ${TESTSDIR}/policy.json $newcid containers-storage:gratuitous-new-image
|
|
buildah unmount $newcid
|
|
buildah rm $newcid
|
|
|
|
othernewcid=$(buildah from other-new-image)
|
|
othernewroot=$(buildah mount $othernewcid)
|
|
test -s $othernewroot/randomfile
|
|
cmp ${TESTDIR}/randomfile $othernewroot/randomfile
|
|
test -s $othernewroot/other-randomfile
|
|
cmp ${TESTDIR}/other-randomfile $othernewroot/other-randomfile
|
|
buildah rm $othernewcid
|
|
|
|
anothernewcid=$(buildah from another-new-image)
|
|
anothernewroot=$(buildah mount $anothernewcid)
|
|
test -s $anothernewroot/randomfile
|
|
cmp ${TESTDIR}/randomfile $anothernewroot/randomfile
|
|
test -s $anothernewroot/other-randomfile
|
|
cmp ${TESTDIR}/other-randomfile $anothernewroot/other-randomfile
|
|
buildah rm $anothernewcid
|
|
|
|
yetanothernewcid=$(buildah from yet-another-new-image)
|
|
yetanothernewroot=$(buildah mount $yetanothernewcid)
|
|
test -s $yetanothernewroot/randomfile
|
|
cmp ${TESTDIR}/randomfile $yetanothernewroot/randomfile
|
|
test -s $yetanothernewroot/other-randomfile
|
|
cmp ${TESTDIR}/other-randomfile $yetanothernewroot/other-randomfile
|
|
buildah delete $yetanothernewcid
|
|
|
|
newcid=$(buildah from new-image)
|
|
buildah commit --rm --signature-policy ${TESTSDIR}/policy.json $newcid containers-storage:remove-container-image
|
|
run buildah mount $newcid
|
|
[ "$status" -ne 0 ]
|
|
|
|
buildah rmi remove-container-image
|
|
buildah rmi containers-storage:other-new-image
|
|
buildah rmi another-new-image
|
|
run buildah --debug=false images -q
|
|
[ "$status" -eq 0 ]
|
|
[ "$output" != "" ]
|
|
for id in $output ; do
|
|
buildah rmi $id
|
|
done
|
|
run buildah --debug=false images -q
|
|
[ "$status" -eq 0 ]
|
|
[ "$output" == "" ]
|
|
}
|