On s6-instance-update, as a user I'd expect it to exist and be run
automatically as part of s6-rc-update. Since restarting applies the
new definition for longruns, having to do one extra step (or two if
s6-instance-update isn't made) per instance of a templated longrun
would be counterintuitive.

 It took a bit of creative juice, and significant refactoring, but I
think I finally got it down.

 The current s6-rc git will remember your created instances from one
compiled db to the next across s6-rc-update, no matter the state of the
service at the time of the update.

 If the updated instanced service is live, then the new template will
be copied to all the instances, but the instances will still be
running on the old template until they're killed via s6-instance-control,
at which point they will restart on the new template.
 This is in line with the principle of maximizing service uptime and
waiting for admin input before killing processes.

 Please try it and tell me if it's working for you. You'll need to
build against the latest git of skalibs and s6.

--
 Laurent

Reply via email to