diff options
Diffstat (limited to 'meta-phosphor/recipes-phosphor/dbus/phosphor-mapper/mapper-wait@.service')
-rw-r--r-- | meta-phosphor/recipes-phosphor/dbus/phosphor-mapper/mapper-wait@.service | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/meta-phosphor/recipes-phosphor/dbus/phosphor-mapper/mapper-wait@.service b/meta-phosphor/recipes-phosphor/dbus/phosphor-mapper/mapper-wait@.service new file mode 100644 index 000000000..f7744e2d8 --- /dev/null +++ b/meta-phosphor/recipes-phosphor/dbus/phosphor-mapper/mapper-wait@.service @@ -0,0 +1,22 @@ +[Unit] +Description=Wait for %I +Wants=obmc-mapper.target +After=obmc-mapper.target + +[Service] +# We are using a Type=simple service instead of the normal Type=oneshot +# since Type=oneshot can't have Restart= lines +# https://github.com/systemd/systemd/issues/2582 +# Unfortunately Type=oneshot services halt any services which order after +# the oneshot on the completion of ExecStart= lines. For Type=simple, the +# halting is only until ExecStartPre lines have completed and ExecStart has +# begun executing. Since we want to wait for the `mapper wait` process to +# finish, it must be an ExecStartPre. All Type=simple services require an +# ExecStart so we use `true` as a placeholder to satisfy the requirement. +Type=simple +RemainAfterExit=yes +Restart=on-failure +TimeoutStartSec=infinity +ExecStartPre=/usr/bin/env mapper wait %I +ExecStart=/usr/bin/env true +SyslogIdentifier=mapper |