https://github.com/mperham/sidekiq
Raw File
Tip revision: 49b5d3351f95b21d8b6cf25e18bf94cd7dd8622a authored by Mike Perham on 21 January 2021, 17:45:31 UTC
bump, release
Tip revision: 49b5d33
sidekiq
#!/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
back to top