8
There’s (still) a glitch between the mongrel_cluster gem and Capistrano 2 (we’re using mongrel_cluster 1.0.5 and Capistrano 2.1.0, for reference) where the application restart at the end of a cap deploy fails with an error like this:
Couldn't find any pid file in '/var/www/[application]/current/tmp/pids’ matching ‘dispatch.[0-9]*.pid’
I’m not sure what’s causing this, but the solution comes at the end of this post, under the heading “Restart Mongrel.” Due to issues with Cap 2 and sudo, though, the provided script fails for us. We’re running the updates as root (bad idea, but it gets around the cap sudo issues) so I updated the task like this:
# Restart task
set :mongrel_config, "/etc/mongrel_cluster/#{application}.yml"
namespace :deploy do
task :restart do
run "mongrel_rails cluster::restart -C #{mongrel_config}"
end
end
I also commented out the “:mongrel_conf” variable from our previous configuration, which it appears that Capistrano was ignoring anyway.
filed under: Ruby on Rails, System Administration | permalink