Re: dependency-only .service

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 2018-10-15 at 15:09 -0700, Johannes Ernst wrote:
> I have several programs A, B and C that, while they are running, require memcached.service to be running.
> When none of A, B, or C is running, I want memcached.service to not run either.
> A, B and C should share the same memcached instance.
> 
> How do I best express this?
> 
> I was thinking I would have a foo@.service, which would be started by A, B and C as foo@A, foo@B, and foo@C right when they come up, and stopped before they quit. This foo@.service would have a dependency on memcached.service, but otherwise not do anything.

Why this indirection through "foo" instead of direct dependencies? Are
A, B and C not systemd services, so you require "foo" as a placeholder
that reflects their dependencies?

> 1. There isn’t a Type=Noop, so having an ExecStart=/bin/true might be my best option?

I think a service with Type=oneshot and RemainAfterExit=true should
work with no ExecStart lines.


> 2. How do I get memcached.service to stop automatically? A Requires= seems to keep it running even after all foo@.service have gone away.

Add StopWhenUnneeded=true to the configuration of the memcached
service.


_______________________________________________
systemd-devel mailing list
systemd-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/systemd-devel




[Index of Archives]     [LARTC]     [Bugtraq]     [Yosemite Forum]     [Photo]

  Powered by Linux