Supervisor/supervisor — pull request #277 by jsipprell (2013-08-11 20:53:46+00:00)
Title: copied & modified config 'include' code from ServerOptions to ClientOpti...

Being able to extend the xmlrpc interface via a custom namespace using a config "drop file" is _really_ nice.

It would be similarly nice if this was paired with the ability to extend the supervisorctl client in a similar fashion. While one **can** add "plugins" by modifying the root supervisord.conf, the ClientOptions class does not parse include files in the same way as ServerOptions. This pull request changes that by copying, with some modification, the "include" code from ServerOptions to ClientOptions. Thus, one can extend supervisorctl to match xmlrpc extensions by (assuming the main conf has an ``[include]`` section with `files = /etc/supervisor.d/*.conf` in it) creating an /etc/supervisor.d/foo.conf file containing:

[ctlplugin:foo]
supervisor.ctl_factory = mynamespace:mymodule.Controller

(mymodule would then need to provide a `Controller` class which inherits from `supervisor.supervisorctl.ControllerPluginBase`).