Re: Thoughts on "First Class Services"
 
On 4/28/2015 11:34 AM, Laurent Bercot wrote:
>
> I'm also interested in Avery's experience with dependency handling.
Hm.  Today isn't the best day to write this (having been up since 4am) 
but I'll try to digest all the little bits and pieces into something.  
Here we go...
First, I will qualify a few things.  The project's scope is, compared to 
a lot of the discussion on the mailing list, and especially in regard to 
s6-rc and anopa, very narrow.  There are several goals but the primary 
thrust of the project is to create a generic, universal set of service 
definitions that could be plugged into any init, distribution, and 
supervision framework arrangement. That's a tall order in itself, but 
there are ways around a lot of this.
With regard to init work, I don't touch it.  Period.  Trying to describe 
a proper init sequence is already well beyond the scope of the project; 
and everyone has their own needs.  Compound this with things like, oh, 
the differences between Linux and FreeBSD starting up, and you have 
plenty of headache to go around.  So my work around for this is to 
completely avoid it; I'm leaving that to other implementers.
With regard to distributions, well, I'm trying to make it as generic as 
possible.  Development is done on a Debian 7 box but I have tried to 
make every effort to avoid any Debian-isms in the actual project 
itself.  In theory, you should be able to use the scripts on any 
distribution, and not just Debian.
With regard to the supervision programs used, this was the tricky one.  
While daemontools, runit, and s6 all have ./run, ./finish, and ./check, 
there's differences in the commands, signals, and capabilities 
involved.  So unless I want to write a bunch of case statements in a 
shell script for each time I touch a command, this is a problem.  
Fortunately, both runit and s6 have emulation of daemontools commands.  
You create a symlink of the daemontools name and point it at the runit/s6
Received on Tue Apr 28 2015 - 21:04:25 UTC
This archive was generated by hypermail 2.3.0
: Sun May 09 2021 - 19:44:19 UTC