mirror of
https://github.com/systemd/systemd.git
synced 2024-10-30 23:21:22 +03:00
12ab94a1e4
Alternative to https://github.com/systemd/systemd/pull/20531. Whenever a service triggered by another unit fails condition checks, stop the triggering unit to prevent systemd busy looping trying to start the triggered unit.
18 lines
745 B
Desktop File
18 lines
745 B
Desktop File
# SPDX-License-Identifier: LGPL-2.1-or-later
|
|
[Unit]
|
|
Description=TEST-63-ISSUE-17433
|
|
|
|
[Service]
|
|
ExecStartPre=rm -f /failed /testok
|
|
Type=oneshot
|
|
ExecStart=rm -f /tmp/nonexistent
|
|
ExecStart=systemctl start test63.path
|
|
ExecStart=touch /tmp/test63
|
|
ExecStart=sleep 2
|
|
# Ensure both the service and the corresponding path unit go inactive due to the failed condition check.
|
|
ExecStart=sh -x -c 'test "$(systemctl show test63.service -P ActiveState)" = inactive'
|
|
ExecStart=sh -x -c 'test "$(systemctl show test63.service -P Result)" = success'
|
|
ExecStart=sh -x -c 'test "$(systemctl show test63.path -P ActiveState)" = failed'
|
|
ExecStart=sh -x -c 'test "$(systemctl show test63.path -P Result)" = unit-condition-failed'
|
|
ExecStart=sh -x -c 'echo OK >/testok'
|