From: Harald Hoyer Date: Fri, 8 Aug 2014 11:34:04 +0000 (+0200) Subject: test: make testsuite work with the new systemd minimal root req X-Git-Tag: 039~48 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=068531232b994ef93b3245484987df1cf1504dd0;p=thirdparty%2Fdracut.git test: make testsuite work with the new systemd minimal root req systemd needs more directories to switch root --- diff --git a/test/TEST-01-BASIC/test.sh b/test/TEST-01-BASIC/test.sh index f857fd4ca..6c8f1a6aa 100755 --- a/test/TEST-01-BASIC/test.sh +++ b/test/TEST-01-BASIC/test.sh @@ -30,6 +30,14 @@ test_setup() { export initdir=$TESTDIR/overlay/source mkdir -p $initdir . $basedir/dracut-functions.sh + ( + cd "$initdir" + mkdir -p -- dev sys proc etc var/run tmp + mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin + for i in bin sbin lib lib64; do + ln -sfnr usr/$i $i + done + ) inst_multiple sh df free ls shutdown poweroff stty cat ps ln ip route \ mount dmesg ifconfig dhclient mkdir cp ping dhclient \ umount strace less setsid @@ -43,7 +51,6 @@ test_setup() { inst_simple /etc/os-release inst ./test-init.sh /sbin/init find_binary plymouth >/dev/null && inst_multiple plymouth - (cd "$initdir"; mkdir -p dev sys proc etc var/run tmp ) cp -a /etc/ld.so.conf* $initdir/etc sudo ldconfig -r "$initdir" ) diff --git a/test/TEST-02-SYSTEMD/test.sh b/test/TEST-02-SYSTEMD/test.sh index cc9da27f9..3eac74461 100755 --- a/test/TEST-02-SYSTEMD/test.sh +++ b/test/TEST-02-SYSTEMD/test.sh @@ -26,6 +26,15 @@ test_setup() { export initdir=$TESTDIR/overlay/source mkdir -p $initdir . $basedir/dracut-functions.sh + ( + cd "$initdir" + mkdir -p -- dev sys proc etc var/run tmp + mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin + for i in bin sbin lib lib64; do + ln -sfnr usr/$i $i + done + mkdir -p -- var/lib/nfs/rpc_pipefs + ) inst_multiple sh df free ls shutdown poweroff stty cat ps ln ip route \ mount dmesg ifconfig dhclient mkdir cp ping dhclient \ umount strace less setsid @@ -39,7 +48,6 @@ test_setup() { inst_simple /etc/os-release inst ./test-init.sh /sbin/init find_binary plymouth >/dev/null && inst_multiple plymouth - (cd "$initdir"; mkdir -p dev sys proc etc var/run tmp ) cp -a /etc/ld.so.conf* $initdir/etc sudo ldconfig -r "$initdir" ) diff --git a/test/TEST-03-USR-MOUNT/test.sh b/test/TEST-03-USR-MOUNT/test.sh index b3d709eb0..2a0cd8ea0 100755 --- a/test/TEST-03-USR-MOUNT/test.sh +++ b/test/TEST-03-USR-MOUNT/test.sh @@ -57,6 +57,14 @@ test_setup() { export initdir=$TESTDIR/overlay/source mkdir -p $initdir . $basedir/dracut-functions.sh + ( + cd "$initdir" + mkdir -p -- dev sys proc etc var/run tmp + mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin + for i in bin sbin lib lib64; do + ln -sfnr usr/$i $i + done + ) inst_multiple sh df free ls shutdown poweroff stty cat ps ln ip route \ mount dmesg ifconfig dhclient mkdir cp ping dhclient \ umount strace less setsid @@ -71,7 +79,6 @@ test_setup() { inst_simple /etc/os-release inst ./test-init.sh /sbin/init find_binary plymouth >/dev/null && inst_multiple plymouth - (cd "$initdir"; mkdir -p dev sys proc etc var/run tmp ) cp -a /etc/ld.so.conf* $initdir/etc sudo ldconfig -r "$initdir" ) diff --git a/test/TEST-10-RAID/test.sh b/test/TEST-10-RAID/test.sh index b17e912c7..2a420f558 100755 --- a/test/TEST-10-RAID/test.sh +++ b/test/TEST-10-RAID/test.sh @@ -27,8 +27,15 @@ test_setup() { # Create what will eventually be our root filesystem onto an overlay ( export initdir=$TESTDIR/overlay/source - (mkdir -p "$initdir"; cd "$initdir"; mkdir -p dev sys proc etc var/run tmp run) . $basedir/dracut-functions.sh + ( + cd "$initdir" + mkdir -p -- dev sys proc etc var/run tmp + mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin + for i in bin sbin lib lib64; do + ln -sfnr usr/$i $i + done + ) inst_multiple sh df free ls shutdown poweroff stty cat ps ln ip route \ mount dmesg ifconfig dhclient mkdir cp ping dhclient for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do diff --git a/test/TEST-11-LVM/test.sh b/test/TEST-11-LVM/test.sh index 6f2461c92..44a4c9c10 100755 --- a/test/TEST-11-LVM/test.sh +++ b/test/TEST-11-LVM/test.sh @@ -25,6 +25,15 @@ test_setup() { ( export initdir=$TESTDIR/overlay/source . $basedir/dracut-functions.sh + ( + cd "$initdir" + mkdir -p -- dev sys proc etc var/run tmp + mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin + for i in bin sbin lib lib64; do + ln -sfnr usr/$i $i + done + mkdir -p -- var/lib/nfs/rpc_pipefs + ) inst_multiple sh df free ls shutdown poweroff stty cat ps ln ip route \ mount dmesg ifconfig dhclient mkdir cp ping dhclient for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do @@ -37,7 +46,6 @@ test_setup() { inst_simple /etc/os-release inst ./test-init.sh /sbin/init find_binary plymouth >/dev/null && inst_multiple plymouth - (cd "$initdir"; mkdir -p dev sys proc etc var/run tmp ) cp -a /etc/ld.so.conf* $initdir/etc mkdir $initdir/run sudo ldconfig -r "$initdir" diff --git a/test/TEST-12-RAID-DEG/test.sh b/test/TEST-12-RAID-DEG/test.sh index dfcf3dc1b..00ff4bc6c 100755 --- a/test/TEST-12-RAID-DEG/test.sh +++ b/test/TEST-12-RAID-DEG/test.sh @@ -67,6 +67,14 @@ test_setup() { ( export initdir=$TESTDIR/overlay/source . $basedir/dracut-functions.sh + ( + cd "$initdir" + mkdir -p -- dev sys proc etc var/run tmp + mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin + for i in bin sbin lib lib64; do + ln -sfnr usr/$i $i + done + ) inst_multiple sh df free ls shutdown poweroff stty cat ps ln ip route \ mount dmesg ifconfig dhclient mkdir cp ping dhclient for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do @@ -79,7 +87,6 @@ test_setup() { inst_simple /etc/os-release inst ./test-init.sh /sbin/init find_binary plymouth >/dev/null && inst_multiple plymouth - (cd "$initdir"; mkdir -p dev sys proc etc var/run tmp ) cp -a /etc/ld.so.conf* $initdir/etc sudo ldconfig -r "$initdir" ) diff --git a/test/TEST-13-ENC-RAID-LVM/test.sh b/test/TEST-13-ENC-RAID-LVM/test.sh index 51021420e..55968a1b7 100755 --- a/test/TEST-13-ENC-RAID-LVM/test.sh +++ b/test/TEST-13-ENC-RAID-LVM/test.sh @@ -63,6 +63,15 @@ test_setup() { ( export initdir=$TESTDIR/overlay/source . $basedir/dracut-functions.sh + ( + cd "$initdir" + mkdir -p -- dev sys proc etc var/run tmp + mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin + for i in bin sbin lib lib64; do + ln -sfnr usr/$i $i + done + mkdir -p -- var/lib/nfs/rpc_pipefs + ) inst_multiple sh df free ls shutdown poweroff stty cat ps ln ip route \ mount dmesg ifconfig dhclient mkdir cp ping dhclient for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do @@ -75,7 +84,6 @@ test_setup() { inst_simple /etc/os-release inst ./test-init.sh /sbin/init find_binary plymouth >/dev/null && inst_multiple plymouth - (cd "$initdir"; mkdir -p dev sys proc etc var/run tmp ) cp -a /etc/ld.so.conf* $initdir/etc sudo ldconfig -r "$initdir" ) diff --git a/test/TEST-14-IMSM/test.sh b/test/TEST-14-IMSM/test.sh index 9353a924f..53cca27d9 100755 --- a/test/TEST-14-IMSM/test.sh +++ b/test/TEST-14-IMSM/test.sh @@ -55,6 +55,14 @@ test_setup() { ( export initdir=$TESTDIR/overlay/source . $basedir/dracut-functions.sh + ( + cd "$initdir" + mkdir -p -- dev sys proc etc var/run tmp + mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin + for i in bin sbin lib lib64; do + ln -sfnr usr/$i $i + done + ) inst_multiple sh df free ls shutdown poweroff stty cat ps ln ip route \ mount dmesg ifconfig dhclient mkdir cp ping dhclient for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do @@ -67,7 +75,6 @@ test_setup() { inst_multiple grep inst ./test-init.sh /sbin/init find_binary plymouth >/dev/null && inst_multiple plymouth - (cd "$initdir"; mkdir -p dev sys proc etc var/run tmp ) cp -a /etc/ld.so.conf* $initdir/etc mkdir $initdir/run sudo ldconfig -r "$initdir" diff --git a/test/TEST-15-BTRFSRAID/test.sh b/test/TEST-15-BTRFSRAID/test.sh index 3fc1d459f..2752e8628 100755 --- a/test/TEST-15-BTRFSRAID/test.sh +++ b/test/TEST-15-BTRFSRAID/test.sh @@ -27,6 +27,15 @@ test_setup() { ( export initdir=$TESTDIR/overlay/source . $basedir/dracut-functions.sh + ( + cd "$initdir" + mkdir -p -- dev sys proc etc var/run tmp + mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin + for i in bin sbin lib lib64; do + ln -sfnr usr/$i $i + done + mkdir -p -- var/lib/nfs/rpc_pipefs + ) inst_multiple sh df free ls shutdown poweroff stty cat ps ln ip route \ mount dmesg ifconfig dhclient mkdir cp ping dhclient for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do @@ -39,7 +48,6 @@ test_setup() { inst ./test-init.sh /sbin/init inst_simple /etc/os-release find_binary plymouth >/dev/null && inst_multiple plymouth - (cd "$initdir"; mkdir -p dev sys proc etc var/run tmp ) cp -a /etc/ld.so.conf* $initdir/etc sudo ldconfig -r "$initdir" ) diff --git a/test/TEST-16-DMSQUASH/test.sh b/test/TEST-16-DMSQUASH/test.sh index 252e84540..036cf5888 100755 --- a/test/TEST-16-DMSQUASH/test.sh +++ b/test/TEST-16-DMSQUASH/test.sh @@ -49,6 +49,14 @@ test_setup() { ( export initdir="$TESTDIR"/root-source . "$basedir"/dracut-functions.sh + ( + cd "$initdir" + mkdir -p -- dev sys proc etc var/run tmp + mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin + for i in bin sbin lib lib64; do + ln -sfnr usr/$i $i + done + ) inst_multiple sh df free ls shutdown poweroff stty cat ps ln ip route \ mount dmesg ifconfig dhclient mkdir cp ping dhclient \ umount strace less @@ -67,7 +75,6 @@ test_setup() { inst "$TESTDIR"/initramfs.testing "/boot/initramfs-$KVERSION.img" inst /boot/vmlinuz-"$KVERSION" find_binary plymouth >/dev/null && inst_multiple plymouth - (cd "$initdir"; mkdir -p -- dev sys proc etc var/run tmp ) cp -a -- /etc/ld.so.conf* "$initdir"/etc sudo ldconfig -r -- "$initdir" ) diff --git a/test/TEST-17-LVM-THIN/test.sh b/test/TEST-17-LVM-THIN/test.sh index 0cfce199c..af6fac3ba 100755 --- a/test/TEST-17-LVM-THIN/test.sh +++ b/test/TEST-17-LVM-THIN/test.sh @@ -25,6 +25,15 @@ test_setup() { ( export initdir=$TESTDIR/overlay/source . $basedir/dracut-functions.sh + ( + cd "$initdir" + mkdir -p -- dev sys proc etc var/run tmp + mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin + for i in bin sbin lib lib64; do + ln -sfnr usr/$i $i + done + mkdir -p -- var/lib/nfs/rpc_pipefs + ) inst_multiple sh df free ls shutdown poweroff stty cat ps ln ip route \ mount dmesg ifconfig dhclient mkdir cp ping dhclient for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do @@ -37,7 +46,6 @@ test_setup() { inst_simple /etc/os-release inst ./test-init.sh /sbin/init find_binary plymouth >/dev/null && inst_multiple plymouth - (cd "$initdir"; mkdir -p dev sys proc etc var/run tmp ) cp -a /etc/ld.so.conf* $initdir/etc mkdir $initdir/run sudo ldconfig -r "$initdir" diff --git a/test/TEST-30-ISCSI/test.sh b/test/TEST-30-ISCSI/test.sh index f59778395..d3f59c904 100755 --- a/test/TEST-30-ISCSI/test.sh +++ b/test/TEST-30-ISCSI/test.sh @@ -105,6 +105,15 @@ test_setup() { ( export initdir=$TESTDIR/overlay/source . $basedir/dracut-functions.sh + ( + cd "$initdir" + mkdir -p -- dev sys proc etc var/run tmp + mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin + for i in bin sbin lib lib64; do + ln -sfnr usr/$i $i + done + mkdir -p -- var/lib/nfs/rpc_pipefs + ) inst_multiple sh shutdown poweroff stty cat ps ln ip \ mount dmesg mkdir cp ping grep for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do @@ -113,7 +122,6 @@ test_setup() { inst_multiple -o ${_terminfodir}/l/linux inst_simple /etc/os-release inst ./client-init.sh /sbin/init - (cd "$initdir"; mkdir -p dev sys proc etc var/run tmp ) cp -a /etc/ld.so.conf* $initdir/etc sudo ldconfig -r "$initdir" ) diff --git a/test/TEST-40-NBD/test.sh b/test/TEST-40-NBD/test.sh index 7cf64b155..3bc0dad29 100755 --- a/test/TEST-40-NBD/test.sh +++ b/test/TEST-40-NBD/test.sh @@ -6,7 +6,7 @@ TEST_DESCRIPTION="root filesystem on NBD" KVERSION=${KVERSION-$(uname -r)} # Uncomment this to debug failures -#DEBUGFAIL="rd.shell rd.retry=10 rd.break" +#DEBUGFAIL="rd.shell rd.break" #SERIAL="udp:127.0.0.1:9999" SERIAL="null" @@ -197,7 +197,13 @@ make_encrypted_root() { export initdir=$TESTDIR/overlay/source . $basedir/dracut-functions.sh mkdir -p "$initdir" - (cd "$initdir"; mkdir -p dev sys proc etc var/run tmp ) + ( + cd "$initdir"; mkdir -p dev sys proc etc var/run tmp + mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin + for i in bin sbin lib lib64; do + ln -sfnr usr/$i $i + done + ) inst_multiple sh df free ls shutdown poweroff stty cat ps ln ip \ mount dmesg mkdir cp ping for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do @@ -215,6 +221,13 @@ make_encrypted_root() { ( export initdir=$TESTDIR/overlay . $basedir/dracut-functions.sh + ( + cd "$initdir"; mkdir -p dev sys proc etc var/run tmp + mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin + for i in bin sbin lib lib64; do + ln -sfnr usr/$i $i + done + ) inst_multiple mke2fs poweroff cp umount tune2fs inst_hook emergency 000 ./hard-off.sh inst_hook initqueue 01 ./create-root.sh @@ -255,7 +268,13 @@ make_client_root() { export initdir=$TESTDIR/mnt . $basedir/dracut-functions.sh mkdir -p "$initdir" - (cd "$initdir"; mkdir -p dev sys proc etc var/run tmp ) + ( + cd "$initdir"; mkdir -p dev sys proc etc var/run tmp + mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin + for i in bin sbin lib lib64; do + ln -sfnr usr/$i $i + done + ) inst_multiple sh ls shutdown poweroff stty cat ps ln ip \ dmesg mkdir cp ping for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do diff --git a/test/TEST-50-MULTINIC/client-init.sh b/test/TEST-50-MULTINIC/client-init.sh index 13affc418..3f3e0792b 100755 --- a/test/TEST-50-MULTINIC/client-init.sh +++ b/test/TEST-50-MULTINIC/client-init.sh @@ -10,9 +10,10 @@ export PS1='initramfs-test:\w\$ ' stty sane echo "made it to the rootfs! Powering down." for i in /run/initramfs/net.*.did-setup; do - strglobin "$i" ":*:*:*:*:" && continue - i=${i%.did-setup} - IFACES+="${i##*/net.} " + [ -f "$i" ] || continue + strglobin "$i" ":*:*:*:*:" && continue + i=${i%.did-setup} + IFACES+="${i##*/net.} " done { echo "OK" diff --git a/test/TEST-50-MULTINIC/test.sh b/test/TEST-50-MULTINIC/test.sh index add849c1e..fa4d692d0 100755 --- a/test/TEST-50-MULTINIC/test.sh +++ b/test/TEST-50-MULTINIC/test.sh @@ -6,7 +6,7 @@ TEST_DESCRIPTION="root filesystem on NFS with multiple nics" KVERSION=${KVERSION-$(uname -r)} # Uncomment this to debug failures -#DEBUGFAIL="rd.shell" +#DEBUGFAIL="rd.shell rd.break" #SERIAL="tcp:127.0.0.1:9999" run_server() { @@ -154,7 +154,7 @@ test_setup() { ( cd "$initdir"; - mkdir -p -- dev sys proc run etc var/run tmp var/lib/{dhcpd,rpcbind} + mkdir -p -- dev sys proc run var/run etc tmp var/lib/{dhcpd,rpcbind} mkdir -p -- var/lib/nfs/{v4recovery,rpc_pipefs} chmod 777 -- var/lib/rpcbind var/lib/nfs ) @@ -217,6 +217,15 @@ test_setup() { ( export initdir="$TESTDIR"/mnt/nfs/client . "$basedir"/dracut-functions.sh + ( + cd "$initdir" + mkdir -p dev sys proc etc run + mkdir -p var/lib/nfs/rpc_pipefs + mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin + for i in bin sbin lib lib64; do + ln -sfnr usr/$i $i + done + ) inst_multiple sh shutdown poweroff stty cat ps ln ip \ mount dmesg mkdir cp ping grep ls for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do @@ -225,11 +234,6 @@ test_setup() { inst_multiple -o "${_terminfodir}"/l/linux inst_simple /etc/os-release inst ./client-init.sh /sbin/init - ( - cd "$initdir" - mkdir -p -- dev sys proc etc run - mkdir -p -- var/lib/nfs/rpc_pipefs - ) inst /etc/nsswitch.conf /etc/nsswitch.conf inst /etc/passwd /etc/passwd inst /etc/group /etc/group