<% # Adapted from: https://github.com/seuros/capistrano-sidekiq/blob/master/lib/generators/capistrano/sidekiq/systemd/templates/sidekiq.service.capistrano.erb %> [Unit] Description=sidekiq for <%= "#{fetch(:application)} (#{fetch(:stage)})" %> After=syslog.target network.target [Service] Type=simple WorkingDirectory=<%= File.join(fetch(:deploy_to), 'current') %> ExecStart=/usr/local/rbenv/bin/rbenv exec bundle exec sidekiq -e <%= fetch(:sidekiq_env) %> ExecReload=/bin/kill -TSTP $MAINPID ExecStop=/bin/kill -TERM $MAINPID <%="StandardOutput=append:#{fetch(:sidekiq_log)}" if fetch(:sidekiq_log) %> <%="StandardError=append:#{fetch(:sidekiq_error_log)}" if fetch(:sidekiq_error_log) %> <%="User=#{fetch(:sidekiq_user)}" if fetch(:sidekiq_user) %> <%="EnvironmentFile=#{fetch(:sidekiq_service_unit_env_file)}" if fetch(:sidekiq_service_unit_env_file) %> <% fetch(:sidekiq_service_unit_env_vars, []).each do |environment_variable| %> <%="Environment=#{environment_variable}" %> <% end %> Environment=RBENV_VERSION=<%= fetch(:rbenv_ruby) %> Environment=RBENV_ROOT=/usr/local/rbenv RestartSec=1 Restart=on-failure SyslogIdentifier=sidekiq_<%= fetch(:application) %>_<%= fetch(:stage) %> [Install] WantedBy=default.target