Hey all, we lean on supervisord pretty heavily to manage most of our
internally deployed services. Many are written in-house, others are
standard open source frameworks, but all are wrapped up into a
deployable tarball that we unpack on our fleet of servers. If we
update a config file, the whole service is re-wrapped and redeployed.

For this reason, we need to trigger a reload of a particular program's
.conf file and restart it. Doing this through the supervisorctl can be
done by running:

> update

but this causes all updates to all programs. if many config files
changed, then many programs would be affected.

In our automation, we'd prefer those other programs be left unchanged.
Or in other words, each program is contained in a deployable tarball
and each deployable tarball has it's own hooks. Those hooks are
sometimes responsible for connecting to supervisord through
supervisorctl and triggering the needful for the programs in the
tarball, but those hooks should not affect all of supervisord's
programs.

I've only found the following to allow an explicit update to a single
named program

> reread
> stop <program_name>
> remove <program_name>
> add <program_name>
# if autostart is false
> start <program_name>

Anybody else need to be able to do this? If so, and there's no way
currently, I could patch and push up if others find it useful.

I know this would be backwards incompatible, but it seems to me to
that update should require a program name argument and "all" be a
reserved word for and an invalid program_name. Only and explicit
"update all" would trigger the current "update" behavior.
_______________________________________________
Supervisor-users mailing list
[email protected]
http://lists.supervisord.org/mailman/listinfo/supervisor-users

Reply via email to