我有一個Rails跑步任務,我想從cron
運行,但當然cron
作爲root
運行,所以環境設置不當以使RVM正常工作。我已經嘗試了一些東西,迄今爲止還沒有工作。 crontab
條目是:從Cron運行Rails任務
* 0 * * * root cd /home/deploy/rails_apps/supercharger/current/ && /usr/local/rvm/wrappers/ruby-1.9.3-p484/ruby bundle exec rails runner -e production "Charger.start"
超長命令行的道歉。不管怎麼說,我得到的錯誤是:
ruby: No such file or directory -- bundle (LoadError)
因此,在RVM目錄中找到ruby,但環境是錯誤的。
我試過rvm alias delete [alias_name]
,它似乎做了一些事情,但是如果我知道它生成的包裝器在哪裏,它會變得麻煩。我看着/usr/local/rvm/wrappers
,並沒有看到一個我指定的名字。
這似乎是一個常見問題 - 常見的問題是存在whenever
寶石。我使用的亞軍命令是如此簡單,它似乎只是將這個條目放在crontab
中,而不是那麼多的扣籃......
任何與此有關的幫助表示讚賞。
爲了加速這個過程,我使用'when'和'deploy'部署後,ssh進入服務器並運行'when'命令。我複製並粘貼到我的crontab中。在某些時候,我可能希望將其納入我的部署中,但不是現在......一旦作業可靠運行,那麼額外的自動化步驟。謝謝! – 2014-10-05 22:09:49