On 21/01/2015 19:03, Steve Litt wrote:
I do too. If you have a run-once thing that quickly returns, couldn't you just not exec the thing in the run script, and then have the last statement in your run script write a "down" file to the service? I'm assuming that s6 does down files the same way as daemontools.
That's really using a supervision infrastructure for things it was not made for. You don't want to spawn a s6-supervise process for every one-shot script you're running! There have been attempts to use a process supervisor as a service management framework before - you can check on the gmane archives. It can be made to work, but it's always kludgy, brittle and unsatisfying - at this rate, you're better off staying with sysvrc or whatever your favorite system manager is. No, the right way to proceed is a real system manager that handles one-shot programs too, and starts/stops daemons by feeding them to the supervision tree, as nosh does. We don't have it yet - at least not in pure C and working with s6/runit/daemontools - but it's on my TODO-list, and in the meantime Avery is working on dependency scripts, check with him. -- Laurent