diff options
Diffstat (limited to 'test/TEST-69-SHUTDOWN/test.sh')
-rwxr-xr-x | test/TEST-69-SHUTDOWN/test.sh | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/test/TEST-69-SHUTDOWN/test.sh b/test/TEST-69-SHUTDOWN/test.sh new file mode 100755 index 0000000..c7f78fe --- /dev/null +++ b/test/TEST-69-SHUTDOWN/test.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: LGPL-2.1-or-later +set -e + +TEST_DESCRIPTION="shutdown testing" +IMAGE_NAME="shutdown" +TEST_NO_QEMU=1 + +# shellcheck source=test/test-functions +. "${TEST_BASE_DIR:?}/test-functions" + +_ORIG_NSPAWN="${SYSTEMD_NSPAWN:?}" +SYSTEMD_NSPAWN="${STATEDIR:?}/run-nspawn" + +setup_nspawn_root_hook() { + cat >"${STATEDIR:?}/run-nspawn" <<EOF +#!/bin/bash +exec "${TEST_BASE_DIR:?}/test-shutdown.py" -v -- "$_ORIG_NSPAWN" "\$@" +exit 1 +EOF + chmod 755 "${STATEDIR:?}"/run-nspawn +} + +test_append_files() { + local workspace="${1:?}" + # prevent shutdown in test suite, the expect script does that manually. + mkdir -p "${workspace:?}/etc/systemd/system/end.service.d" + cat >"$workspace/etc/systemd/system/end.service.d/99-override.conf" <<EOF +[Service] +ExecStart= +ExecStart=/bin/true +EOF + inst /usr/bin/screen + echo "PS1='screen\$WINDOW # '" >>"$workspace/root/.bashrc" + echo 'startup_message off' >"$workspace/etc/screenrc" + echo 'bell_msg ""' >>"$workspace/etc/screenrc" +} + +do_test "$@" |