[Backgroundrb-devel] Deploying to production with backgroundrb (capistrano)
Ezra Zygmuntowicz
ezmobius at gmail.com
Mon Feb 5 14:22:10 EST 2007
Hey Jerrod-
You need to use nohup in your tasks to start bdrb.
task :before_restart, :roles => :app do
restart_backgroundrb
end
task :start_backgroundrb, :roles => :app do
sudo "nohup /data/#{application}/current/script/backgroundrb start "
end
task :stop_backgroundrb, :roles => :app do
sudo "kill -9 `cat /data/#{application}/current/log/
backgroundrb.pid` 2>/dev/null; true"
end
task :restart_backgroundrb, :roles => :app do
stop_backgroundrb
start_backgroundrb
end
Cheers-
-Ezra
On Feb 5, 2007, at 10:48 AM, Jerrod Blavos wrote:
> I have noticed that occasionally (about 50% of the time) when i
> deploy (using capistrano) my app to a production server, i have to
> ssh into the box and manually
> stop and start backgroundrb to get it to load my workers.
>
> this is my basic setup
>
> i have 2 workers:
>
> lib/workers/mp3_worker.rb => takes a hash of params to downsample
> an mp3
> lib/workers/flv_worker.rb => takes a has of arguments to compose
> a command line to convert a file into flv
>
> in my recipe
> config/deploy.rb
>
> i have 2 lines
> run "#{current_path}/script/backgroundrb stop"
> run "#{current_path}/script/backgroundrb start"
>
> that should stop the server and restart it.
>
> after the deploy, i have started sshing in tot he box and running
>
> script/backgroundrb console
>
> and checking the loaded_worker_classes
>
> about 50% of the time, its empty. no classes loaded.
>
> if i manually run those commands, it starts and they load.
> identical command. different (and upredictable) results.
>
> how would i go about ensuring that when i deploy that backgroundrb
> restarts properly? ideally i will only be restarting backgroundrb
> when i have model changes or worker class changes that would affect
> it's operation.
>
>
> Jerrod Blavos
> ph. 919.341.0143
> fx. 482.492.5009
> jerrod at indierockmedia.com
>
>
>
> _______________________________________________
> Backgroundrb-devel mailing list
> Backgroundrb-devel at rubyforge.org
> http://rubyforge.org/mailman/listinfo/backgroundrb-devel
-- Ezra Zygmuntowicz
-- Lead Rails Evangelist
-- ez at engineyard.com
-- Engine Yard, Serious Rails Hosting
-- (866) 518-YARD (9273)
More information about the Backgroundrb-devel
mailing list