Cron не работает в rails 3. Я использую всякий раз, когда gem Вот код, который я использую.
файл schedule.rb
every 1.hours do
command "cd /home/me/my_app/current"
rake "thinking_sphinx:index RAILS_ENV=production"
end
every 1.day, :at => '12.01 am' do
command "cd /home/me/my_app/current"
rake "messages_counter_for_user_and_group RAILS_ENV=production"
command "cd /home/me/my_app/current"
runner "RAILS_ENV=production User.update_all(:daily_message_count => 0)"
end
Из сценария развертывания capistrano: -
task :long do
transaction do
cron_tab_activate
end
task:cron_tab_activate, :roles=>:app do
send(run_method, "cd #{current_path} && RAILS_ENV=#{stage} whenever --update-crontab test ")
end
Я использую rvm. Ruby 1.9.2, Rails 3.0.10