#!/usr/bin/env bash # SPDX-License-Identifier: LGPL-2.1-or-later set -eux # Test that ExecStopPost= is always run systemd-analyze log-level debug systemd-run --unit=simple1.service --wait -p StandardOutput=tty -p StandardError=tty -p Type=simple \ -p ExecStopPost='/bin/touch /run/simple1' true test -f /run/simple1 (! systemd-run --unit=simple2.service --wait -p StandardOutput=tty -p StandardError=tty -p Type=simple \ -p ExecStopPost='/bin/touch /run/simple2' false) test -f /run/simple2 systemd-run --unit=exec1.service --wait -p StandardOutput=tty -p StandardError=tty -p Type=exec \ -p ExecStopPost='/bin/touch /run/exec1' sleep 1 test -f /run/exec1 (! systemd-run --unit=exec2.service --wait -p StandardOutput=tty -p StandardError=tty -p Type=exec \ -p ExecStopPost='/bin/touch /run/exec2' sh -c 'sleep 1; false') test -f /run/exec2 cat >/tmp/forking1.sh </tmp/forking2.sh </tmp/notify1.sh <