Установка Rubber для правильного запуска создания экземпляра

Я пытаюсь запустить инстанс Amazon EC2 с помощью Rubber.

cap rubber:create_staging

Rubber-ruby.yml отражает используемую версию

ruby_build_version: 20141027
ruby_version: 1.9.3-p550

Однако после cap rubber:create_staging капистрано немедленно прерывается с

LoadError: cannot load such file -- rubber
/Users/you/r/rubbertest/Capfile:14:in `require'

с заявлением capfile

$:.unshift "#{root}/vendor/plugins/rubber/lib/"  # line 13
require 'rubber'                                 # line 14

Поэтому я решил, что понадобится резиновый камень. Файл драгоценного камня отредактирован (без capistrano процесс преждевременно завершился неудачно)

gem 'capistrano', '~> 3.1.0'
gem 'capistrano-bundler', '~> 1.1.2'
gem 'capistrano-rails', '~> 1.1.1'
gem 'capistrano-rvm'
gem 'rubber'

И процесс пошел еще дальше, а потом снова потерпел неудачу:

NoMethodError: undefined method `instance' for Capistrano::Configuration:Class
/Users/you/.rvm/gems/ruby-1.9.3-p551/gems/rubber-1.15.0/lib/rubber/capistrano.rb:1:in `<top (required)>'
/Users/you/r/rubbertest/Capfile:17:in `require'

файл capistrano.rb является однострочным

Capistrano::Configuration.instance.load(File.join(File.dirname(__FILE__), 'recipes', 'rubber.rb'))

вызывается файлом capfile

Rubber::initialize(root, env)
require 'rubber/capistrano'   # line 17

Еще одна странность заключается в том, что последняя инструкция Capfile вызывает

Dir['vendor/plugins/*/recipes/*.rb'].each { |plugin| load(plugin) }

и этот каталог пуст, что соответствует инструкциям: Rubber может быть установлен как rubygem (рекомендуется) < / а>

Я дважды запускал это с идентичным поведением.

Однако эти пробелы (без упоминания каучукового камня или капистрано, вызова поставщика / плагинов против предпочтения геммификации) говорят мне, что здесь отсутствует какой-то шаг. где это пошло не так?


person Jerome    schedule 17.09.2015    source источник


Ответы (1)


Похоже, что идентичность камня имеет значение:

#  gem 'rubber'

установит только версию 1.15.0, указав

gem 'rubber', '3.1.0'

затем cap rubber:config бежит. create_staging также начнет работать.
note версия представляет собой проблему: первоначально опубликованная версия каким-то образом требовала отдельной записи capistrano и приводила к последующему сбою. список версий находится здесь

person Jerome    schedule 17.09.2015