耙任务不是由Cron发起的? (openproject jobs:workoff)

时间:2017-09-14 13:40:22

标签: ruby-on-rails cron openproject

Cron在Ruby on Rails 5应用程序(Openproject 7)中似乎从未启动过rake任务

openproject$ crontab -l
* * * * * cd /home/openproject/openproject-ce && RAILS_ENV=production bundle exec rake jobs:workoff >> log/cron.log

永远不会创建日志文件,也不会执行任务(没有调试信息)....

我该怎么办?

编辑:

通过在生产环境中运行rails控制台,我总是有待处理的作业:

Delayed::Job.count ==> 2

直接在ssh控制台中使用同一用户(openproject)运行相同的指令可以成功运行:

RAILS_ENV=production bundle exec rake jobs:workoff
    ==> returns successfully and Delayed::Job.count ==> 0

cron守护程序似乎正在运行:

sudo service cron status
    cron.service - Regular background program processing daemon
    Loaded: loaded (/lib/systemd/system/cron.service; enabled)
    Active: active (running) since Sat 2017-07-15 16:03:13 CEST; 2 months 0 days ago

我想念什么?

1 个答案:

答案 0 :(得分:0)

我找到了解决方案,这得益于一个非常好的建议:cron和普通用户的环境变量是不同的(shell不一样......模糊的原因)。

通过直接添加cron th einstruction“source /home/username/.profile;”问题就消失了。

我的.profile包含在路径中添加“rbenv”和“node”,“rbenv init - ”和节点相同...