我之前没有使用过cron,所以我无法确定我做得对。我想要自动化的任务似乎没有运行。我在终端上做了这些步骤:
我将此代码添加到schedule.rb:
every 10.minutes do
runner "User.vote", environment => "development"
end
every :hour do
runner "Digest.rss", :environment => "development"
end
我将此代码添加到deploy.rb:
after "deploy:symlink", "deploy:update_crontab"
namespace :deploy do
desc "Update the crontab file"
task :update_crontab, :roles => :db do
run "cd #{current_path} && whenever --update-crontab #{application}"
end
end
我在终端做了这个:每当
它返回了:
@hourly cd /Users/RedApple/S && script/runner -e development 'Digest.rss'
0,10,20,30,40,50 * * * * cd /Users/RedApple/S && script/runner -e development 'User.vote'
在终端中单独运行这些命令:
script/runner -e development 'Digest.rss'
script/runner -e development 'User.vote'
现在在开发模式脚本/服务器上运行本地服务器,我没有看到任何证据表明代码实际上正在运行。我有没有做过一些步骤?没有“每当”的指南显示我所做的其他事情。
答案 0 :(得分:11)
我也是新手,但我认为只是运行
whenever
只显示创建的cron作业的样子。为了实际编写cron作业(使其处于活动状态),您需要执行:
whenever -w
这将为您提供完整的选项列表:
whenever -h