Cron Job在我的电脑上工作正常。但是当我使用capistrano将它部署到服务器时。 cron.log文件显示它正在查找服务器上不存在的那个版本如何解决此问题。任何想法......?
UILabel
当我运行crontab -e命令时,它显示正确的版本
/home/deployer/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/bundler-1.7.2/lib/bundler/definition.rb:22:in `build': /home/deployer/apps/production_app/releases/20140906112257/Gemfile not found (Bundler::GemfileNotFound)
from
我如何解决这个问题......?
答案 0 :(得分:1)
前一段时间我遇到了同样的问题。事实证明,当cron尝试运行任务时,未定义变量BUNDLE_GEMFILE。所以你需要schedule.rb
中的以下内容:
env :BUNDLE_GEMFILE, ENV["/#{path}/Gemfile"]
或
env :BUNDLE_GEMFILE, ENV["/home/deployer/apps/production_app/current/Gemfile"]
让我知道你的情况会有什么帮助。