seuros/capistrano-puma — pull request #54 by crohr (2014-06-25 16:58:40+00:00)
Title: Explicitly daemonize when needed.

First, thanks for the gem, great work!

When trying to integrate with upstart, I think it would be better if the daemonize option were not hardcoded into the `puma.rb` file. Otherwise, upstart is completely lost and thinks the daemon hasn't started. FYI I also tried using the upstart stanzas `expect daemon` and `expect fork` but without success (and it's not recommended anyway).

More generally, I think it makes sense to explicitly daemonize on the command line, instead of forcing it for all peripheral services that may want to reuse the `puma.rb` config file.

For reference, here is my example upstart config file:

```
description "Puma Server XYZ"

start on runlevel [2345]
stop on runlevel [06]

setuid deploy
setgid deploy

respawn
respawn limit 10 30

script
cd /path/to/app/current
bundle exec puma -C /path/to/app/shared/puma.rb
end script
```

These small changes would allow upstart and capistrano to cohabit peacefully. Let me know what you think.