ajcrowe/puppet-supervisord — pull request #23 by jtreminio (2014-07-26 05:48:06+00:00)
Title: Daemon will not start in Debian

Attempting to use the module in Debian yields the following:

=> default: Debug: Executing 'supervisorctl reread'
==> default: Notice: /Stage[main]/Supervisord::Reload/Exec[supervisorctl_reread]/returns: error: , [Errno 2] No such file or directory: file: /usr/lib/python2.7/socket.py line: 224
==> default: Error: /Stage[main]/Supervisord::Reload/Exec[supervisorctl_reread]: Failed to call refresh: supervisorctl reread returned 2 instead of one of [0]
==> default: Error: /Stage[main]/Supervisord::Reload/Exec[supervisorctl_reread]: supervisorctl reread returned 2 instead of one of [0]

The issue was the init.d file:

DAEMON=<%= @executable %>
NAME=supervisord
DESC=supervisor

test -x $DAEMON || exit 0

`DAEMON` was simply `supervisord` which wasn't being found. Then the `test -x` wouldn't find the executable and would silently exit.

This is now resolved by choosing the correct install path in Debian/RHEL OS's. The test was added into the RHEL init.d file, as well as using a `$CTL` variable for the `supervisorctl` executable.

This also undoes ajcrowe/puppet-supervisord/commit/805f6eec4c48622616ccae745cb7154e57453aca because it should fail when the executable is not properly started!