summaryrefslogtreecommitdiffstats
path: root/test/units/testsuite-59.sh
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-12 03:50:45 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-12 03:50:45 +0000
commitefeb864cb547a2cbf96dc0053a8bdb4d9190b364 (patch)
treec0b83368f18be983fcc763200c4c24d633244588 /test/units/testsuite-59.sh
parentReleasing progress-linux version 255.5-1~progress7.99u1. (diff)
downloadsystemd-efeb864cb547a2cbf96dc0053a8bdb4d9190b364.tar.xz
systemd-efeb864cb547a2cbf96dc0053a8bdb4d9190b364.zip
Merging upstream version 256.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'test/units/testsuite-59.sh')
-rwxr-xr-xtest/units/testsuite-59.sh160
1 files changed, 0 insertions, 160 deletions
diff --git a/test/units/testsuite-59.sh b/test/units/testsuite-59.sh
deleted file mode 100755
index 1b622b3..0000000
--- a/test/units/testsuite-59.sh
+++ /dev/null
@@ -1,160 +0,0 @@
-#!/usr/bin/env bash
-# SPDX-License-Identifier: LGPL-2.1-or-later
-set -eux
-set -o pipefail
-
-fail() {
- systemd-analyze log-level info
- exit 1
-}
-
-# Wait for a service to enter a state within a timeout period, if it doesn't
-# enter the desired state within the timeout period then this function will
-# exit the test case with a non zero exit code.
-wait_on_state_or_fail() {
- service=$1
- expected_state=$2
- timeout=$3
-
- state=$(systemctl show "$service" --property=ActiveState --value)
- while [ "$state" != "$expected_state" ]; do
- if [ "$timeout" = "0" ]; then
- fail
- fi
- timeout=$((timeout - 1))
- sleep 1
- state=$(systemctl show "$service" --property=ActiveState --value)
- done
-}
-
-systemd-analyze log-level debug
-
-
-cat >/run/systemd/system/testservice-fail-59.service <<EOF
-[Unit]
-Description=TEST-59-RELOADING-RESTART Normal exit
-
-[Service]
-Type=notify
-ExecStart=/bin/bash -c "systemd-notify --ready; systemd-notify RELOADING=1; sleep 1; exit 1"
-EOF
-
-cat >/run/systemd/system/testservice-fail-restart-59.service <<EOF
-[Unit]
-Description=TEST-59-RELOADING-RESTART Restart=on-failure
-
-[Service]
-Type=notify
-ExecStart=/bin/bash -c "systemd-notify --ready; systemd-notify RELOADING=1; sleep 1; exit 1"
-Restart=on-failure
-StartLimitBurst=1
-EOF
-
-
-cat >/run/systemd/system/testservice-abort-restart-59.service <<EOF
-[Unit]
-Description=TEST-59-RELOADING-RESTART Restart=on-abort
-
-[Service]
-Type=notify
-ExecStart=/bin/bash -c "systemd-notify --ready; systemd-notify RELOADING=1; sleep 5; exit 1"
-Restart=on-abort
-EOF
-
-systemctl daemon-reload
-
-# This service sends a RELOADING=1 message then exits before it sends a
-# READY=1. Ensure it enters failed state and does not linger in reloading
-# state.
-systemctl start testservice-fail-59.service
-wait_on_state_or_fail "testservice-fail-59.service" "failed" "30"
-
-# This service sends a RELOADING=1 message then exits before it sends a
-# READY=1. It should automatically restart on failure. Ensure it enters failed
-# state and does not linger in reloading state.
-systemctl start testservice-fail-restart-59.service
-wait_on_state_or_fail "testservice-fail-restart-59.service" "failed" "30"
-
-# This service sends a RELOADING=1 message then exits before it sends a
-# READY=1. It should automatically restart on abort. It will sleep for 5s
-# to allow us to send it a SIGABRT. Ensure the service enters the failed state
-# and does not linger in reloading state.
-systemctl start testservice-abort-restart-59.service
-systemctl --signal=SIGABRT kill testservice-abort-restart-59.service
-wait_on_state_or_fail "testservice-abort-restart-59.service" "failed" "30"
-
-systemd-analyze log-level info
-
-# Test that rate-limiting daemon-reload works
-mkdir -p /run/systemd/system.conf.d/
-cat >/run/systemd/system.conf.d/50-test-59-reload.conf <<EOF
-[Manager]
-ReloadLimitIntervalSec=9
-ReloadLimitBurst=3
-EOF
-
-# Pick up the new config
-systemctl daemon-reload
-
-# The timeout will hit (and the test will fail) if the reloads are not rate-limited
-timeout 15 bash -c 'while systemctl daemon-reload --no-block; do true; done'
-
-# Rate limit should reset after 9s
-sleep 10
-
-systemctl daemon-reload
-
-# Let's now test the notify-reload logic
-
-cat >/run/notify-reload-test.sh <<EOF
-#!/usr/bin/env bash
-set -eux
-set -o pipefail
-
-EXIT_STATUS=88
-LEAVE=0
-
-function reload() {
- systemd-notify --reloading --status="Adding 11 to exit status"
- EXIT_STATUS=\$((EXIT_STATUS + 11))
- systemd-notify --ready --status="Back running"
-}
-
-function leave() {
- systemd-notify --stopping --status="Adding 7 to exit status"
- EXIT_STATUS=\$((EXIT_STATUS + 7))
- LEAVE=1
- return 0
-}
-
-trap reload SIGHUP
-trap leave SIGTERM
-
-systemd-notify --ready
-systemd-notify --status="Running now"
-
-while [ \$LEAVE = 0 ] ; do
- sleep 1
-done
-
-systemd-notify --status="Adding 3 to exit status"
-EXIT_STATUS=\$((EXIT_STATUS + 3))
-exit \$EXIT_STATUS
-EOF
-
-chmod +x /run/notify-reload-test.sh
-
-systemd-analyze log-level debug
-
-systemd-run --unit notify-reload-test -p Type=notify-reload -p KillMode=process /run/notify-reload-test.sh
-systemctl reload notify-reload-test
-systemctl stop notify-reload-test
-
-test "$(systemctl show -p ExecMainStatus --value notify-reload-test)" = 109
-
-systemctl reset-failed notify-reload-test
-rm /run/notify-reload-test.sh
-
-systemd-analyze log-level info
-
-touch /testok