Files
skopeo/tests/basic.bats
Nalin Dahyabhai 0d83d9ebfa Pull required flag values from the arguments list
When flags that we'd require be specified aren't, if there are command
line arguments, use their values as flag values.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2017-03-17 18:46:16 -04:00

96 lines
3.8 KiB
Bash

#!/usr/bin/env bats
load helpers
@test "from" {
cid=$(buildah from --pull --signature-policy ${TESTSDIR}/policy.json --image alpine)
buildah delete --name=$cid
cid=$(buildah from --pull --signature-policy ${TESTSDIR}/policy.json alpine)
buildah delete --name=$cid
cid=$(buildah from --pull --signature-policy ${TESTSDIR}/policy.json alpine i-love-naming-things)
buildah delete --name=i-love-naming-things
}
@test "from-defaultpull" {
cid=$(buildah from --signature-policy ${TESTSDIR}/policy.json --image alpine)
buildah delete $cid
}
@test "from-nopull" {
run buildah from --pull=false --signature-policy ${TESTSDIR}/policy.json --image alpine
[ "$status" -eq 1 ]
}
@test "mount" {
cid=$(buildah from --pull --signature-policy ${TESTSDIR}/policy.json --image alpine)
root=$(buildah mount --name=$cid)
buildah unmount --name=$cid
root=$(buildah mount $cid)
buildah unmount $cid
buildah delete --name=$cid
}
@test "by-name" {
cid=$(buildah from --pull --signature-policy ${TESTSDIR}/policy.json --image alpine --name=alpine-working-image-for-test)
root=$(buildah mount --name=alpine-working-image-for-test)
buildah unmount --name=alpine-working-image-for-test
buildah delete --name=alpine-working-image-for-test
}
@test "by-root" {
cid=$(buildah from --pull --signature-policy ${TESTSDIR}/policy.json --image alpine)
root=$(buildah mount --name=$cid)
buildah unmount --root=$root
buildah delete --root=$root
}
@test "commit" {
createrandom ${TESTDIR}/randomfile
createrandom ${TESTDIR}/other-randomfile
cid=$(buildah from --pull --signature-policy ${TESTSDIR}/policy.json --image alpine)
root=$(buildah mount --name=$cid)
cp ${TESTDIR}/randomfile $root/randomfile
buildah unmount --name=$cid
buildah commit --signature-policy ${TESTSDIR}/policy.json --name=$cid --output=containers-storage:new-image
buildah delete --name=$cid
newcid=$(buildah from --image new-image)
newroot=$(buildah mount --name=$newcid)
test -s $newroot/randomfile
cmp ${TESTDIR}/randomfile $newroot/randomfile
cp ${TESTDIR}/other-randomfile $newroot/other-randomfile
buildah commit --signature-policy ${TESTSDIR}/policy.json --name=$newcid --output=containers-storage:other-new-image
# Not an allowed ordering of arguments and flags. Check that it's rejected.
run buildah commit --signature-policy ${TESTSDIR}/policy.json $newcid --output=containers-storage:rejected-new-image
[ "$status" -eq 1 ]
buildah commit --signature-policy ${TESTSDIR}/policy.json --output=containers-storage:another-new-image $newcid
buildah commit --signature-policy ${TESTSDIR}/policy.json $newcid containers-storage:yet-another-new-image
buildah unmount --name=$newcid
buildah delete --name=$newcid
othernewcid=$(buildah from --image other-new-image)
othernewroot=$(buildah mount --name=$othernewcid)
test -s $othernewroot/randomfile
cmp ${TESTDIR}/randomfile $othernewroot/randomfile
test -s $othernewroot/other-randomfile
cmp ${TESTDIR}/other-randomfile $othernewroot/other-randomfile
buildah delete --name=$othernewcid
anothernewcid=$(buildah from --image another-new-image)
anothernewroot=$(buildah mount --name=$anothernewcid)
test -s $anothernewroot/randomfile
cmp ${TESTDIR}/randomfile $anothernewroot/randomfile
test -s $anothernewroot/other-randomfile
cmp ${TESTDIR}/other-randomfile $anothernewroot/other-randomfile
buildah delete --name=$anothernewcid
yetanothernewcid=$(buildah from --image yet-another-new-image)
yetanothernewroot=$(buildah mount --name=$yetanothernewcid)
test -s $yetanothernewroot/randomfile
cmp ${TESTDIR}/randomfile $yetanothernewroot/randomfile
test -s $yetanothernewroot/other-randomfile
cmp ${TESTDIR}/other-randomfile $yetanothernewroot/other-randomfile
buildah delete --name=$yetanothernewcid
}