Развертывание с Capistrano 3 и всякий раз, когда драгоценный камень
Я пытаюсь развернуть приложение с помощью whenever
использование драгоценного камня capistrano 3
,
Я добавил: require "whenever/capistrano"
в Capfile, и:
set :whenever_identifier, ->{ "#{fetch(:application)}_#{fetch(:stage)}" }
в config/deploy.rb.
При развертывании я получаю сообщение об ошибке:
01 bundler: failed to load command: whenever (/home/deploy/www/laptophits/shared/bundle/ruby/2.2.0/bin/whenever)
NameError: undefined local variable or method `extract' for #<Whenever::JobList:0x00000002edf6c8>
config/schedule.rb:9:in `block in initialize'
Когда я ssh к производственной машине и пытаюсь запустить всякий раз вручную: /home/deploy/www/laptophits/shared/bundle/ruby/2.2.0/bin/whenever
Я получаю ошибку:
/home/deploy/.rvm/rubies/ruby-2.2.3/lib/ruby/site_ruby/2.2.0/rubygems.rb:271:in `find_spec_for_exe': can't find gem whenever (>= 0.a) (Gem::GemNotFoundException)
from /home/deploy/.rvm/rubies/ruby-2.2.3/lib/ruby/site_ruby/2.2.0/rubygems.rb:299:in `activate_bin_path'
Есть идеи как это исправить?
1 ответ
Решение
Ключевая ошибка в
NameError: undefined local variable or method `extract' for #<Whenever::JobList:0x00000002edf6c8>
config/schedule.rb:9:in `block in initialize'
Там, скорее всего, ошибка кода в строке 9 config/schedule.rb
, Вероятно, используя метод extract
который не существует на объекте или в контексте, в котором вы его используете.