mirror of
https://github.com/systemd/systemd-stable.git
synced 2025-01-06 13:17:44 +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
710 B
Desktop File
18 lines
710 B
Desktop File
# SPDX-License-Identifier: LGPL-2.1-or-later
|
|
[Unit]
|
|
Description=TEST-10-ISSUE-2467
|
|
|
|
[Service]
|
|
ExecStartPre=rm -f /failed /testok
|
|
Type=oneshot
|
|
ExecStart=rm -f /tmp/nonexistent
|
|
ExecStart=systemctl start test10.socket
|
|
ExecStart=sh -x -c 'printf x >test.file'
|
|
ExecStart=-socat -T20 OPEN:test.file UNIX-CONNECT:/run/test.ctl
|
|
# TriggerLimitIntervalSec= by default is set to 2s. A "sleep 10" should give
|
|
# systemd enough time even on slower machines, to reach the trigger limit.
|
|
ExecStart=sleep 10
|
|
ExecStart=sh -x -c 'test "$(systemctl show test10.socket -P ActiveState)" = failed'
|
|
ExecStart=sh -x -c 'test "$(systemctl show test10.socket -P Result)" = service-condition-failed'
|
|
ExecStart=sh -x -c 'echo OK >/testok'
|