diff options
author | Roy Franz <roy.franz@linaro.org> | 2015-04-22 14:30:13 -0700 |
---|---|---|
committer | Roy Franz <roy.franz@linaro.org> | 2015-04-22 20:24:50 -0700 |
commit | 9fcda914ebd1cb666a86877d27880d42793c83f8 (patch) | |
tree | 246e015c590e05a4bcf371e716d407cbe5e99f11 /ubuntu/scripts | |
parent | 23203f9f686e0d2268d4165f26b0efd30bd7c8a5 (diff) |
Add EDK2 AArch64 QEMU boot tests, with networking
Add EDK2 boot tests on AAarch64 QEMU with networking
enabled to support testing iSCSI boot in EDK2. This
is intended to be run in a KVM image that has been
set up to provide a DHCP server and an iSCSI target
Change-Id: I78753166c5d5288c56e264c76773c68f02f98b91
Signed-off-by: Roy Franz <roy.franz@linaro.org>
Diffstat (limited to 'ubuntu/scripts')
-rwxr-xr-x | ubuntu/scripts/qemu-edk2-boot.expect | 29 | ||||
-rwxr-xr-x | ubuntu/scripts/qemu-edk2-boot.sh | 16 |
2 files changed, 45 insertions, 0 deletions
diff --git a/ubuntu/scripts/qemu-edk2-boot.expect b/ubuntu/scripts/qemu-edk2-boot.expect new file mode 100755 index 0000000..62300b0 --- /dev/null +++ b/ubuntu/scripts/qemu-edk2-boot.expect @@ -0,0 +1,29 @@ +#!/usr/bin/expect -- +# +# Run qemu-system and check we can boot and shutdown +# + +if {[llength $argv] == 0} { + send_user "Usage: boot.expect <qemu invocation>\n" + exit 1 +} + +set timeout 180 +spawn {*}$argv +expect { + "buildroot login: " { send -- "root\r" } + timeout { send "# boot failed"; exit 1 } +} + + +expect "# " +send -- "uname -a\r" +expect "# " +set timeout 10 +send -- "halt -d 5\r" +expect { + "reboot: System halted" { send -- "c"; expect "(qemu) "; send -- "quit\r" } + timeout { send "# shutdown failed"; exit 2 } +} +expect eof +exit 0 diff --git a/ubuntu/scripts/qemu-edk2-boot.sh b/ubuntu/scripts/qemu-edk2-boot.sh new file mode 100755 index 0000000..5a226d0 --- /dev/null +++ b/ubuntu/scripts/qemu-edk2-boot.sh @@ -0,0 +1,16 @@ +#!/bin/bash +# +# A simple wrapper to run a expect based system test +# +# This expects the follow environment variables to be set: +# QEMU_BIN - path to binary +# QEMU_ARGS - arguments to run +# + + +pushd `dirname $0` > /dev/null +BASE=`pwd -P` +popd > /dev/null + +lava-test-case qemu-edk2-boot-${TEST_NAME} --shell ${BASE}/qemu-edk2-boot.expect ${QEMU_BIN} ${QEMU_ARGS} + |