Skip to content

Commit

Permalink
sorry monit, but i'm taking the bluepill
Browse files Browse the repository at this point in the history
  • Loading branch information
qrush committed Aug 18, 2010
1 parent 65bb89a commit ed955bc
Show file tree
Hide file tree
Showing 4 changed files with 34 additions and 17 deletions.
29 changes: 12 additions & 17 deletions config/deploy.rb
Expand Up @@ -74,36 +74,31 @@
end
end

namespace :delayed_job do
desc "Start delayed_job process"
task :start, :roles => :app do
run "sudo monit start delayed_job_#{rails_env}"
namespace :bluepill do
desc "Stop processes that bluepill is monitoring and quit bluepill"
task :quit, :roles => [:app] do
sudo "bluepill stop"
sudo "bluepill quit"
end

desc "Stop delayed_job process"
task :stop, :roles => :app do
run "sudo monit stop delayed_job_#{rails_env}"
desc "Load bluepill configuration and start it"
task :start, :roles => [:app] do
sudo "bluepill load #{release_path}/config/pills/#{rails_env}.rb"
end

desc "Restart delayed_job process"
task :restart, :roles => :app do
run "sudo monit stop delayed_job_#{rails_env}"
sleep 5
run "sudo monit start delayed_job_#{rails_env}"
desc "Prints bluepills monitored processes statuses"
task :status, :roles => [:app] do
sudo "bluepill status"
end
end

after "deploy:start", "delayed_job:start"
after "deploy:stop", "delayed_job:stop"
after "deploy:restart", "delayed_job:restart"
after "deploy:update", "bluepill:quit", "bluepill:start"

after "deploy:update_code", "deploy:bundle"
after "deploy", "deploy:migrate_with_bundler"
after "deploy", "deploy:cleanup"
after "deploy:symlink", "deploy:move_in_database_yml", "deploy:move_in_secret_settings"



Dir[File.join(File.dirname(__FILE__), '..', 'vendor', 'gems', 'hoptoad_notifier-*')].each do |vendored_notifier|
$: << File.join(vendored_notifier, 'lib')
end
18 changes: 18 additions & 0 deletions config/pill.rb
@@ -0,0 +1,18 @@
REE_PATH = "/opt/ruby-enterprise-1.8.7-2010.02/bin"

Bluepill.application("gemcutter") do |app|
app.process("delayed_job") do |process|
process.working_dir = "#{RELEASE_PATH}/current"

process.start_grace_time = 10.seconds
process.stop_grace_time = 10.seconds
process.restart_grace_time = 10.seconds

process.start_command = "PATH=#{REE_PATH}:$PATH script/delayed_job start"
process.stop_command = "PATH=#{REE_PATH}:$PATH script/delayed_job stop"

process.pid_file = "#{RELEASE_PATH}/shared/pids/delayed_job.pid"

process.uid = process.gid = "rubycentral"
end
end
2 changes: 2 additions & 0 deletions config/pills/production.rb
@@ -0,0 +1,2 @@
RELEASE_PATH = "/var/www/rubycentral/gemcutter.org"
require '../pill'
2 changes: 2 additions & 0 deletions config/pills/staging.rb
@@ -0,0 +1,2 @@
RELEASE_PATH = "/var/www/rubycentral/staging.gemcutter.org"
require '../pill'

0 comments on commit ed955bc

Please sign in to comment.