summaryrefslogtreecommitdiffstats
path: root/meta-phosphor/recipes-phosphor/dbus/phosphor-mapper/mapper-subtree-remove@.service
diff options
context:
space:
mode:
Diffstat (limited to 'meta-phosphor/recipes-phosphor/dbus/phosphor-mapper/mapper-subtree-remove@.service')
-rw-r--r--meta-phosphor/recipes-phosphor/dbus/phosphor-mapper/mapper-subtree-remove@.service22
1 files changed, 22 insertions, 0 deletions
diff --git a/meta-phosphor/recipes-phosphor/dbus/phosphor-mapper/mapper-subtree-remove@.service b/meta-phosphor/recipes-phosphor/dbus/phosphor-mapper/mapper-subtree-remove@.service
new file mode 100644
index 000000000..4bd411e75
--- /dev/null
+++ b/meta-phosphor/recipes-phosphor/dbus/phosphor-mapper/mapper-subtree-remove@.service
@@ -0,0 +1,22 @@
+[Unit]
+Description=mapper subtree-remove %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=no
+Restart=on-failure
+TimeoutStartSec=infinity
+ExecStartPre=/usr/bin/env mapper subtree-remove %I
+ExecStart=/usr/bin/env true
+SyslogIdentifier=mapper
OpenPOWER on IntegriCloud