堆栈:
Apache 2
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 变量以反射(reflect)使用 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'
关于ruby-on-rails - 来自 Crontab 的 Rake 任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4922828/