summaryrefslogtreecommitdiff
path: root/config/unicorn.rb
blob: 37f4eb76fdece7d68c94e38ef76f978179471324 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
worker_processes Integer(ENV["WEB_CONCURRENCY"] || 3)
timeout 15
preload_app true


stderr_path "/var/www/redstoner/shared/log/unicorn.stderr.log"
stdout_path "/var/www/redstoner/shared/log/unicorn.stdout.log"

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