X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=test%2FTEST-03-JOBS%2Ftest.sh;h=630325867bdbd3bba00f2cc2a6aca9111850f256;hb=889a90422dd47284dffa32b9234a6e58991b000c;hp=02fd8b9ce86d22332e537b9ab0b240ec99bc883e;hpb=37185ec80ad372907a2a9388735655a7334babb6;p=elogind.git diff --git a/test/TEST-03-JOBS/test.sh b/test/TEST-03-JOBS/test.sh index 02fd8b9ce..630325867 100755 --- a/test/TEST-03-JOBS/test.sh +++ b/test/TEST-03-JOBS/test.sh @@ -7,16 +7,8 @@ TEST_DESCRIPTION="Job-related tests" # Uncomment this to debug failures #DEBUGFAIL="systemd.unit=multi-user.target" -DEBUGTOOLS="df free ls stty cat ps ln ip route dmesg dhclient mkdir cp ping dhclient strace less grep id tty touch du sort" - -run_qemu() { - # TODO: qemu wrapper script: http://www.spinics.net/lists/kvm/msg72389.html - qemu-kvm \ - -hda $TESTDIR/rootdisk.img \ - -m 512M -nographic \ - -net none -kernel /boot/vmlinuz-$KERNEL_VER \ - -append "root=/dev/sda1 systemd.log_level=debug raid=noautodetect loglevel=2 init=/usr/lib/systemd/systemd ro console=ttyS0,115200n81 selinux=0 $DEBUGFAIL" || return 1 +check_result_qemu() { ret=1 mkdir -p $TESTDIR/root mount ${LOOPDEV}p1 $TESTDIR/root @@ -30,28 +22,16 @@ run_qemu() { return $ret } - -run_nspawn() { - ../../systemd-nspawn -b -D $TESTDIR/nspawn-root /usr/lib/systemd/systemd - ret=1 - [[ -e $TESTDIR/nspawn-root/testok ]] && ret=0 - [[ -f $TESTDIR/root/failed ]] && cp -a $TESTDIR/nspawn-root/failed $TESTDIR - cp -a $TESTDIR/nspawn-root/var/log/journal $TESTDIR - [[ -f $TESTDIR/failed ]] && cat $TESTDIR/failed - ls -l $TESTDIR/journal/*/*.journal - test -s $TESTDIR/failed && ret=$(($ret+1)) - return $ret -} - - test_run() { if check_qemu ; then - run_qemu || return 1 + run_qemu + check_result_qemu || return 1 else dwarn "can't run qemu-kvm, skipping" fi if check_nspawn; then - run_nspawn || return 1 + run_nspawn + check_result_nspawn || return 1 else dwarn "can't run systemd-nspawn, skipping" fi @@ -59,71 +39,16 @@ test_run() { } test_setup() { - rm -f $TESTDIR/rootdisk.img - # Create the blank file to use as a root filesystem - dd if=/dev/null of=$TESTDIR/rootdisk.img bs=1M seek=200 - LOOPDEV=$(losetup --show -P -f $TESTDIR/rootdisk.img) - [ -b $LOOPDEV ] || return 1 - echo "LOOPDEV=$LOOPDEV" >> $STATEFILE - sfdisk -C 6400 -H 2 -S 32 -L $LOOPDEV <$TESTDIR/keyfile + create_empty_image mkdir -p $TESTDIR/root mount ${LOOPDEV}p1 $TESTDIR/root - mkdir -p $TESTDIR/root/run # Create what will eventually be our root filesystem onto an overlay ( LOG_LEVEL=5 - initdir=$TESTDIR/root - - # create the basic filesystem layout - setup_basic_dirs - - # install compiled files - (cd ../..; make DESTDIR=$initdir install) - - # remove unneeded documentation - rm -fr $initdir/usr/share/{man,doc,gtk-doc} - - # install possible missing libraries - for i in $initdir/{sbin,bin}/* $initdir/lib/systemd/*; do - inst_libs $i - done - - # make a journal directory - mkdir -p $initdir/var/log/journal - - # install some basic config files - inst /etc/sysconfig/init - inst /etc/passwd - inst /etc/shadow - inst /etc/group - inst /etc/shells - inst /etc/nsswitch.conf - inst /etc/pam.conf - inst /etc/securetty - inst /etc/os-release - inst /etc/localtime - # we want an empty environment - > $initdir/etc/environment - > $initdir/etc/machine-id - - # set the hostname - echo systemd-testsuite > $initdir/etc/hostname - eval $(udevadm info --export --query=env --name=${LOOPDEV}p2) - cat >$initdir/etc/fstab <$initdir/etc/systemd/system/testsuite.service <$initdir/etc/rc.d/rc.local <