运行cron job时遇到错误`require':无法加载这样的文件 - bundler / setup(LoadError)

时间:2015-08-30 05:44:39

标签: ruby-on-rails crontab capistrano3 whenever rvm-capistrano

我已经使用Capistrano 3部署了应用程序。我一直在跟踪错误。

`require': cannot load such file -- bundler/setup (LoadError)

这是cron选项卡列表

PATH=/home/deploy/magnificent/shared/bundle/ruby/2.2.0/bin:/usr/local/rvm/gems/ruby-2.2.2/bin:/usr/local/rvm/gems/ruby-2.2.2@global/bin:/usr/local/rvm/rubies/ruby-2.2.2/bin:/usr/local/rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

* * * * * /bin/bash -l -c 'cd /home/deploy/magnificent/releases/20150830045359 && bin/rails runner -e production '\''Document.process_pending'\'' >> log/cron_standard.log 2>> log/cron_error.log'

schedule.rb

env :PATH, ENV['PATH']
set :output, { error: 'log/cron_error.log', standard: 'log/cron_standard.log'}

every 1.minutes do
  runner 'Document.process_pending'
end

请注意,所有宝石都安装在default gemset

2 个答案:

答案 0 :(得分:6)

  

请注意,所有宝石都安装在默认的gemset

我有3个宝石可供投入生产。 Rails正在使用default安装所有必需的宝石。

从crontab列表中可以看出,crontab也在global gemset目录中查找路径。

所以我刚刚选择了global gemset并安装了bundler

$ rvm gemset use global
$ gem install bundler

这些步骤解决了这个问题。

答案 1 :(得分:3)

这对我有用:

${PROVISIONING_PROFILE}