堆栈:
ApACE2
Rails 2.3.8
红帽Linux
Ruby企业版1.8.7
在我的应用程序用户的crontab中获得了以下rake任务,该任务旨在每隔15分钟将记录拉入数据库表:

*/15 * * * * app_user cd /var/www/apps/my_app/current/ && rake thing:do_stuff RAILS_ENV=production

我可以在cron日志中看到cron守护进程正在运行这个任务,但是它应该将记录拉入的数据库表没有改变。当我在/var/www/apps/my_app/current目录中手动运行该任务,并按预期将记录拉入表中时,该任务工作正常。
我重置了crontab中的path变量以反映使用ree的情况,并认为默认路径可能不会与/opt/ruby enterprise结合……
如何让rake任务真正与cron一起运行?

最佳答案

0,15,30,45 * * * * /bin/bash -l -c 'cd /var/www/apps/my_app/current && RAILS_ENV=production bundle exec rake thing:do_stuff --silent'

09-10 05:32
查看更多