#!/usr/bin/env ruby # Quiet some warnings we see when running in warning mode: # RUBYOPT=-w bundle exec sidekiq $TESTING = false require_relative '../lib/sidekiq/cli' def integrate_with_systemd return unless ENV["NOTIFY_SOCKET"] Sidekiq.configure_server do |config| Sidekiq.logger.info "Enabling systemd notification integration" require "sidekiq/sd_notify" config.on(:startup) do Sidekiq::SdNotify.ready end config.on(:shutdown) do Sidekiq::SdNotify.stopping end Sidekiq.start_watchdog if Sidekiq::SdNotify.watchdog? end end begin cli = Sidekiq::CLI.instance cli.parse integrate_with_systemd cli.run rescue => e raise e if $DEBUG if Sidekiq.error_handlers.length == 0 STDERR.puts e.message STDERR.puts e.backtrace.join("\n") else cli.handle_exception e end exit 1 end