On 25/04/2015 11:24, Joan Picanyol i Puig wrote:
What I'd like is the ability to have some services "ready-to-run", but not
up by default. Some of them might be there for contingency purposes (so
that an operator can start a failover), some of them might have to go up
(and down) at certain times only.

 If a service S doesn't need to be up for other services to run, then
simply don't set dependencies on S. Don't include S in your main bundle
of services. Start your main bundle; then, when you want to start S,
"s6-rc -u S". When you want to stop it, "s6-rc -d S". Since nothing
depends on S, "s6-rc -d S" will only stop S.
 While S is considered "down" from the s6-rc standpoint, its service
directory will include a ./down file.


I lack knowledge & experience to attempt to provide details, so I'll
just handwave poiting that the first concept to have clear is that of
"identity": is this servicedir a "new" service definition or a
modification of an existing one? It then should be feasible to compute
the modifications needed to the live DAG (inserting/removing nodes as
well as restarting them).

 Yes. Identity is simply defined by the service name. The hard part is
what to do when dependencies change for a same name.

--
 Laurent

Reply via email to