Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
devel:openSUSE:QA:Leap:15
systemd-v234-testsuite
0011-TEST-02-CRYPTSETUP-remove-qemu-from-test-r...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0011-TEST-02-CRYPTSETUP-remove-qemu-from-test-runs.patch of Package systemd-v234-testsuite
From c991e374732df5e44289367b05fed3d35123fa3f Mon Sep 17 00:00:00 2001 From: Thomas Blume <thomas.blume@suse.com> Date: Wed, 6 Mar 2019 10:04:00 +0100 Subject: [PATCH 02/10] TEST-02-CRYPTSETUP: remove qemu from testrun --- test/TEST-02-CRYPTSETUP/test.sh | 94 ++++++++++++++++++++++------------------- 1 file changed, 50 insertions(+), 44 deletions(-) diff --git a/test/TEST-02-CRYPTSETUP/test.sh b/test/TEST-02-CRYPTSETUP/test.sh index 1280148b58..f189c16a97 100755 --- a/test/TEST-02-CRYPTSETUP/test.sh +++ b/test/TEST-02-CRYPTSETUP/test.sh @@ -5,84 +5,90 @@ set -e TEST_DESCRIPTION="cryptsetup systemd setup" TEST_NO_NSPAWN=1 +export TEST_BASE_DIR="/var/opt/systemd-tests/test/" . $TEST_BASE_DIR/test-functions -check_result_qemu() { +test_run() { ret=1 - mkdir -p $TESTDIR/root - mount ${LOOPDEV}p1 $TESTDIR/root - [[ -e $TESTDIR/root/testok ]] && ret=0 - [[ -f $TESTDIR/root/failed ]] && cp -a $TESTDIR/root/failed $TESTDIR - cryptsetup luksOpen ${LOOPDEV}p2 varcrypt <$TESTDIR/keyfile - mount /dev/mapper/varcrypt $TESTDIR/root/var - cp -a $TESTDIR/root/var/log/journal $TESTDIR - umount $TESTDIR/root/var - umount $TESTDIR/root - cryptsetup luksClose /dev/mapper/varcrypt - [[ -f $TESTDIR/failed ]] && cat $TESTDIR/failed - ls -l $TESTDIR/journal/*/*.journal - test -s $TESTDIR/failed && ret=$(($ret+1)) + systemctl daemon-reload + systemctl start testsuite.service || return 1 + systemctl status --full testsuite.service + + if [ -z "$TEST_NO_NSPAWN" ]; then + if run_nspawn; then + check_result_nspawn || return 1 + else + dwarn "can't run systemd-nspawn, skipping" + fi + fi + test -s /failed && ret=$(($ret+1)) + [[ -e /testok ]] && ret=0 + return $ret } - test_setup() { - create_empty_image + sfdisk --force "/dev/vdb" <<EOF +,2000M +, +EOF + echo -n test >$TESTDIR/keyfile - cryptsetup -q luksFormat ${LOOPDEV}p2 $TESTDIR/keyfile - cryptsetup luksOpen ${LOOPDEV}p2 varcrypt <$TESTDIR/keyfile + cryptsetup -q luksFormat /dev/vdb1 $TESTDIR/keyfile + cryptsetup luksOpen /dev/vdb1 varcrypt <$TESTDIR/keyfile mkfs.ext3 -L var /dev/mapper/varcrypt - mkdir -p $TESTDIR/root - mount ${LOOPDEV}p1 $TESTDIR/root - mkdir -p $TESTDIR/root/var - mount /dev/mapper/varcrypt $TESTDIR/root/var + sed -i 's/ \/var / \/mnt /' /etc/fstab - # Create what will eventually be our root filesystem onto an overlay ( LOG_LEVEL=5 eval $(udevadm info --export --query=env --name=/dev/mapper/varcrypt) - eval $(udevadm info --export --query=env --name=${LOOPDEV}p2) - - setup_basic_environment + eval $(udevadm info --export --query=env --name=/dev/vdb1) # setup the testsuite service - cat >$initdir/etc/systemd/system/testsuite.service <<EOF + cat >/etc/systemd/system/testsuite.service <<EOF [Unit] Description=Testsuite service After=multi-user.target [Service] -ExecStart=/bin/sh -x -c 'systemctl --state=failed --no-legend --no-pager > /failed ; echo OK > /testok' +ExecStart=/bin/sh -x -c 'echo -e "\nfailed:" > /failed; systemctl --state=failed --no-pager >> /failed; echo -e "\ntestresult:\nOK" > /testok' +ExecStartPost=/bin/sh -x -c '/bin/mount | /usr/bin/sed -n "/ \/var /p" >> /testok' Type=oneshot EOF - setup_testsuite - - install_dmevent - generate_module_dependencies - cat >$initdir/etc/crypttab <<EOF + cat >/etc/crypttab <<EOF $DM_NAME UUID=$ID_FS_UUID /etc/varkey EOF - echo -n test > $initdir/etc/varkey - cat $initdir/etc/crypttab | ddebug + echo -n test > /etc/varkey + cat /etc/crypttab | ddebug - cat >>$initdir/etc/fstab <<EOF + cat >>/etc/fstab <<EOF /dev/mapper/varcrypt /var ext3 defaults 0 1 EOF ) || return 1 - ddebug "umount $TESTDIR/root/var" - umount $TESTDIR/root/var + + mount /dev/mapper/varcrypt /mnt + cp -avr /var/* /mnt + umount /mnt cryptsetup luksClose /dev/mapper/varcrypt - ddebug "umount $TESTDIR/root" - umount $TESTDIR/root } test_cleanup() { - [ -d $TESTDIR/root/var ] && mountpoint $TESTDIR/root/var && umount $TESTDIR/root/var - [[ -b /dev/mapper/varcrypt ]] && cryptsetup luksClose /dev/mapper/varcrypt - umount $TESTDIR/root 2>/dev/null || true - [[ $LOOPDEV ]] && losetup -d $LOOPDEV + sed -i '/varcrypt/d' /etc/fstab + sed -i 's/ \/mnt / \/var /' /etc/fstab + + for service in testsuite.service; do + rm /etc/systemd/system/$service + done + [[ -e /testok ]] && rm /testok + [[ -e /failed ]] && rm /failed + + rm -r /mnt/tmp/systemd-test.* + rm /etc/systemd/system/testsuite.service + rm /etc/varkey + rm /etc/crypttab + dd if=/dev/zero of=/dev/vdb count=100 return 0 } -- 2.16.4
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor