我已经开始使用Whenever gem 来安排带有rails 的cron 作业。
但遗憾的是 rake 无法运行,我将问题追溯到未加载的环境。
每当 gem 生成脚本,例如:
/bin/bash -l -c '....
我设法让它工作
/bin/bash -i -c '...
[更改是 -i(交互式)而不是 -l(登录)]
根据cron的文档,它们的语法是正确的。谁能提示为什么它在 Ubuntu 10.4 上可能会失败?
谢谢
当您使用 gem 时,首先,创建一个:cron
任务,如下所示:
task :cron => :environment do
Rake::Task['db:your-development-env'].invoke
end
然后在你的 config/schedule.rb 中,设置你的备份时间:
set :output, "/tmp/cron_log.log"
every 1.day, at: '1:00 am' do; rake 'cron'; end
要将设置传递给 crontab:
whenever --update-crontab