Sha256: 6fa0d6b1af40b646a94aaf7ffaef06fc8046e9f3c38d6c777bb121df0c5f9bd2

Contents?: true

Size: 827 Bytes

Versions: 3

Compression:

Stored size: 827 Bytes

Contents

namespace :qc_plus do
  desc "Start a new worker for the (default or $QUEUE) queue"
  task :work  => :environment do
    puts "Starting up worker for queue #{ENV['QUEUE']}"

    if defined? Raven
      Raven.configure do |config|
        # ActiveRecord::RecordNotFound is ignored by Raven by default,
        # which shouldn't happen in background jobs.
        config.excluded_exceptions = []
      end
    end

    @worker = QueueClassicPlus::CustomWorker.new

    trap('INT') do
      $stderr.puts("Received INT. Shutting down.")
      if !@worker.running
        $stderr.puts("Worker has already stopped running.")
      end
      @worker.stop
    end

    trap('TERM') do
      $stderr.puts("Received Term. Shutting down.")
      @worker.stop
    end

    @worker.start
    $stderr.puts 'Shut down successfully'
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
queue_classic_plus-1.1.0 lib/queue_classic_plus/tasks/work.rake
queue_classic_plus-1.0.1 lib/queue_classic_plus/tasks/work.rake
queue_classic_plus-1.0.0 lib/queue_classic_plus/tasks/work.rake