0

我的 config/schedule.rb 文件如下所示:

LOG_FILE = File.expand_path("#{__FILE__}/../../log/Scripts.log")

set :environment_variable, 'BACKEND_ENV'
set :environment, :production_backend
set :output, LOG_FILE

every 1.day, :at => '1:00 am' do
  rake "my_task"
end

当我运行时,output并且environment设置正确,但environment_variable仍默认为 RAILS_ENV:

me@my_box:~$ whenever
0 1 * * * /bin/bash -l -c 'cd /home/me && RAILS_ENV=staging bundle exec rake my_task --silent >> /home/me/log/Scripts.log 2>&1'
## [message] Above is your schedule file converted to cron syntax; your crontab file was not updated.

文档很清楚......我做错了什么?

4

2 回答 2

0

在此提交environment_variable中引入了一种更改:env_argument 的方法,并在此提交中重命名为 :environment_variable在 0.8.3 版本中首次发布,因此升级将使此功能可用。

在提出问题时,0.8.3 尚未发布,我仍在使用 0.8.2,但我正在查看 Github 上 master 分支上的 README。

于 2013-07-10T14:07:33.843 回答
-1

把它放在你的 schedule.rb 文件中

env:PATH,'the/path/of/your/server/'
于 2016-04-13T02:04:03.800 回答