lorax/tests/cli/test_compose_google.sh
Jiri Kortus 16daa25137 [tests] Use a function to wait for compose to finish
The function is meant to replace the duplicate pieces of code used in various
tests, the polling interval is unified to 20 seconds.

Cherry-picked from 836f0ddf

Related: rhbz#1769525
2019-11-08 13:57:35 +02:00

44 lines
1.1 KiB
Bash
Executable File

# Note: execute this file from the project root directory
#####
#
# Make sure a google compose can be built without errors
#
#####
set -e
. /usr/share/beakerlib/beakerlib.sh
. $(dirname $0)/lib/lib.sh
CLI="${CLI:-./src/bin/composer-cli}"
rlJournalStart
rlPhasStartTest "compose start"
rlAssertEquals "SELinux operates in enforcing mode" "$(getenforce)" "Enforcing"
UUID=`$CLI compose start example-http-server google`
rlAssertEquals "exit code should be zero" $? 0
UUID=`echo $UUID | cut -f 2 -d ' '`
rlPhaseEnd
rlPhaseStart "compose finished"
wait_for_compose $UUID
rlPhaseEnd
rlPhaseStart "compose check"
$CLI compose image $UUID
rlAssertEquals "exit code should be zero" $? 0
fileList=$(gzip -cd "$UUID-disk.tar.gz" | tar tf -)
rlAssertEquals "archive should contain disk.raw" "$fileList" "disk.raw"
rlPhaseEnd
rlPhaseStartCleanup
rlRun "rm -rf $UUID-disk.tar.gz"
rlRun -t -c "$CLI compose delete $UUID"
rlPhaseEnd
rlJournalEnd
rlJournalPrintText