lorax/tests/cli/test_compose_live-iso.sh
Jiri Kortus 4c313acc64 Add checks for disabled root account
The root account checks are applied to generated and deployed images
to make sure that root account is locked, except for live ISO.

(cherry picked from commit 655e7e40c0)
(cherry picked from commit 7c093ecbb4)
2019-05-06 12:07:06 -07:00

66 lines
1.8 KiB
Bash
Executable File

#!/bin/bash
# Note: execute this file from the project root directory
#####
#
# Builds live-iso image and test it with QEMU-KVM
#
#####
. /usr/share/beakerlib/beakerlib.sh
CLI="${CLI:-./src/bin/composer-cli}"
QEMU="/usr/bin/qemu-kvm"
rlJournalStart
rlPhaseStartSetup
rlAssertExists $QEMU
rlPhaseEnd
rlPhaseStartTest "compose start"
rlAssertEquals "SELinux operates in enforcing mode" "$(getenforce)" "Enforcing"
# NOTE: live-iso.ks explicitly disables sshd but test_cli.sh enables it
UUID=`$CLI compose start example-http-server live-iso`
rlAssertEquals "exit code should be zero" $? 0
UUID=`echo $UUID | cut -f 2 -d' '`
rlPhaseEnd
rlPhaseStartTest "compose finished"
if [ -n "$UUID" ]; then
until $CLI compose info $UUID | grep FINISHED; do
sleep 20
rlLogInfo "Waiting for compose to finish ..."
done;
else
rlFail "Compose UUID is empty!"
fi
rlRun -t -c "$CLI compose image $UUID"
IMAGE="$UUID-live.iso"
rlPhaseEnd
rlPhaseStartTest "Start VM instance"
rlRun -t -c "$QEMU -m 2048 -boot c -cdrom $IMAGE -nographic \
-net user,id=nic0,hostfwd=tcp::2222-:22 -net nic &"
# 60 seconds timeout at boot menu screen
# then media check + boot ~ 30 seconds
sleep 120
rlPhaseEnd
rlPhaseStartTest "Verify VM instance"
# verify we can login into that instance *WITHOUT* a password
. ./tests/cli/lib/root_account.sh
ROOT_ACCOUNT_LOCKED=0 check_root_account root localhost "-p 2222"
rlPhaseEnd
rlPhaseStartCleanup
rlRun -t -c "killall -9 qemu-system-$(uname -m)"
rlRun -t -c "$CLI compose delete $UUID"
rlRun -t -c "rm -rf $IMAGE"
rlPhaseEnd
rlJournalEnd
rlJournalPrintText