# ex: ts=8 sw=4 sts=4 et filetype=sh
TEST_DESCRIPTION="cryptsetup systemd setup"
-KVERSION=${KVERSION-$(uname -r)}
-KERNEL_VER=$(uname -r)
+. $TEST_BASE_DIR/test-functions
# Uncomment this to debug failures
#DEBUGFAIL="systemd.unit=multi-user.target"
/dev/mapper/varcrypt /var ext3 defaults 0 1
EOF
- # setup the testsuite target
- cat >$initdir/etc/systemd/system/testsuite.target <<EOF
-[Unit]
-Description=Testsuite target
-Requires=multi-user.target
-After=multi-user.target
-Conflicts=rescue.target
-AllowIsolate=yes
-EOF
+ # setup the testsuite target and the test ending service
+ cp $TEST_BASE_DIR/{testsuite.target,end.service} $initdir/etc/systemd/system/
# setup the testsuite service
cat >$initdir/etc/systemd/system/testsuite.service <<EOF
After=multi-user.target
[Service]
-ExecStart=/bin/bash -c 'set -x; systemctl --failed --no-legend --no-pager > /failed ; echo OK > /testok; while : ;do systemd-cat echo "testsuite service waiting for /var/log/journal" ; echo "testsuite service waiting for journal to move to /var/log/journal" > /dev/console ; for i in /var/log/journal/*;do [ -d "\$i" ] && echo "\$i" && break 2; done; sleep 1; done; sleep 1; exit 0;'
-ExecStopPost=/usr/bin/systemctl poweroff --no-block
+ExecStart=/bin/bash -c 'set -x; ( systemctl --failed --no-legend --no-pager; systemctl status --failed ) > /failed ; echo OK > /testok; while : ;do systemd-cat echo "testsuite service waiting for /var/log/journal" ; echo "testsuite service waiting for journal to move to /var/log/journal" > /dev/console ; for i in /var/log/journal/*;do [ -d "\$i" ] && echo "\$i" && break 2; done; sleep 1; done; sleep 1; exit 0;'
Type=oneshot
EOF
+
mkdir -p $initdir/etc/systemd/system/testsuite.target.wants
ln -fs ../testsuite.service $initdir/etc/systemd/system/testsuite.target.wants/testsuite.service
+ ln -fs ../end.service $initdir/etc/systemd/system/testsuite.target.wants/end.service
# make the testsuite the default target
ln -fs testsuite.target $initdir/etc/systemd/system/default.target
# softlink mtab
ln -fs /proc/self/mounts $initdir/etc/mtab
- # install any Exec's from the service files
+ # install any Execs from the service files
egrep -ho '^Exec[^ ]*=[^ ]+' $initdir/lib/systemd/system/*.service \
| while read i; do
i=${i##Exec*=}; i=${i##-}
cp -a /etc/ld.so.conf* $initdir/etc
ldconfig -r "$initdir"
ddebug "Strip binaeries"
- find "$initdir" -perm +111 -type f | xargs strip --strip-unneeded | ddebug
+ find "$initdir" -executable -not -path '*/lib/modules/*.ko' -type f | xargs strip --strip-unneeded | ddebug
# copy depmod files
inst /lib/modules/$KERNEL_VER/modules.order
return 0
}
-. $TEST_BASE_DIR/test-functions
do_test "$@"