# /etc/init/sidekiq.conf - Sidekiq config # This example config should work with Ubuntu 12.04+. It # allows you to manage multiple Sidekiq instances with # Upstart, Ubuntu's native service management tool. # # See workers.conf for how to manage all Sidekiq instances at once. # # Save this config as /etc/init/sidekiq.conf then mange sidekiq with: # sudo start sidekiq index=0 # sudo stop sidekiq index=0 # sudo status sidekiq index=0 # # or use the service command: # sudo service sidekiq {start,stop,restart,status} # description "Sidekiq Background Worker" # no "start on", we don't want to automatically start stop on (stopping workers or runlevel [06]) # change to match your deployment user setuid deploy setgid deploy env HOME=/home/deploy respawn respawn limit 3 30 # TERM is sent by sidekiqctl when stopping sidekiq. Without declaring these as normal exit codes, it just respawns. normal exit 0 TERM instance $index script # this script runs in /bin/sh by default # respawn as bash so we can source in rbenv exec /bin/bash <<'EOT' # use syslog for logging exec &> /dev/kmsg # pull in system rbenv source /etc/profile.d/rbenv.sh cd /opt/theclymb/current exec bin/sidekiq -i ${index} -e production EOT end script