if ENV['RAILS_ENV']=="development"
  worker_processes Integer 1
  timeout 5000
else
  worker_processes Integer(ENV["WEB_CONCURRENCY"] || 2)
  timeout 20
end

if ENV["RAILS_ENV"] == 'production'
  timeout 20
  preload_app true

  before_fork do |server, worker|
    Signal.trap 'TERM' do
      puts 'Unicorn master intercepting TERM and sending myself QUIT instead'
      Process.kill 'QUIT', Process.pid
    end

    defined?(ActiveRecord::Base) and
      ActiveRecord::Base.connection.disconnect!
  end

  after_fork do |server, worker|
    Signal.trap 'TERM' do
      puts 'Unicorn worker intercepting TERM and doing nothing. Wait for master to send QUIT'
    end

    defined?(ActiveRecord::Base) and
      ActiveRecord::Base.establish_connection
  end
end

