Question

My team's project requires me to use the vagrant-berkshelf plugin, specifically version 1.3.7. The others on the team are running Vagrant 1.3.5, though I have attempted the install on 1.2.7, 1.3.5, and 1.4.3, all with the same error.

Output on install:

    mentat@odrade:~$ vagrant plugin install vagrant-berkshelf --plugin-version 1.3.7
Installing the 'vagrant-berkshelf --version '1.3.7'' plugin. This can take a few minutes...
/opt/vagrant/embedded/lib/ruby/2.0.0/rubygems/dependency_installer.rb:211:in `gather_dependencies': Unable to resolve dependencies: ridley requires buff-extensions (~> 0.3); buff-config requires buff-extensions (~> 0.3); varia_model requires buff-extensions (~> 1.0) (Gem::DependencyError)
    from /opt/vagrant/embedded/lib/ruby/2.0.0/rubygems/dependency_installer.rb:333:in `install'
    from /opt/vagrant/embedded/gems/gems/vagrant-1.4.3/plugins/commands/plugin/action/install_gem.rb:65:in `block in call'
    from /opt/vagrant/embedded/gems/gems/vagrant-1.4.3/plugins/commands/plugin/gem_helper.rb:42:in `block in with_environment'
    from /opt/vagrant/embedded/lib/ruby/2.0.0/rubygems/user_interaction.rb:40:in `use_ui'
    from /opt/vagrant/embedded/gems/gems/vagrant-1.4.3/plugins/commands/plugin/gem_helper.rb:41:in `with_environment'
    from /opt/vagrant/embedded/gems/gems/vagrant-1.4.3/plugins/commands/plugin/action/install_gem.rb:52:in `call'
    from /opt/vagrant/embedded/gems/gems/vagrant-1.4.3/lib/vagrant/action/warden.rb:34:in `call'
    from /opt/vagrant/embedded/gems/gems/vagrant-1.4.3/plugins/commands/plugin/action/bundler_check.rb:20:in `call'
    from /opt/vagrant/embedded/gems/gems/vagrant-1.4.3/lib/vagrant/action/warden.rb:34:in `call'
    from /opt/vagrant/embedded/gems/gems/vagrant-1.4.3/lib/vagrant/action/builder.rb:116:in `call'
    from /opt/vagrant/embedded/gems/gems/vagrant-1.4.3/lib/vagrant/action/runner.rb:69:in `block in run'
    from /opt/vagrant/embedded/gems/gems/vagrant-1.4.3/lib/vagrant/util/busy.rb:19:in `busy'
    from /opt/vagrant/embedded/gems/gems/vagrant-1.4.3/lib/vagrant/action/runner.rb:69:in `run'
    from /opt/vagrant/embedded/gems/gems/vagrant-1.4.3/plugins/commands/plugin/command/base.rb:17:in `action'
    from /opt/vagrant/embedded/gems/gems/vagrant-1.4.3/plugins/commands/plugin/command/install.rb:27:in `execute'
    from /opt/vagrant/embedded/gems/gems/vagrant-1.4.3/plugins/commands/plugin/command/root.rb:56:in `execute'
    from /opt/vagrant/embedded/gems/gems/vagrant-1.4.3/lib/vagrant/cli.rb:38:in `execute'
    from /opt/vagrant/embedded/gems/gems/vagrant-1.4.3/lib/vagrant/environment.rb:484:in `cli'
    from /opt/vagrant/embedded/gems/gems/vagrant-1.4.3/bin/vagrant:127:in `<top (required)>'
    from /opt/vagrant/bin/../embedded/gems/bin/vagrant:23:in `load'
    from /opt/vagrant/bin/../embedded/gems/bin/vagrant:23:in `<main>'

The dependency issues are with ridley, buff-extensions and buff-config. I am currently using RVM with Ruby 1.9.3-p448, and a gem list shows that I should meet these dependencies. If I try to install a version of the vagrant-berkshelf plugin I get a different list of dependency issues (but this is a moot point as I will need to be on 1.3.7).

Any ideas?

Was it helpful?

Solution

I was able to get this working by installing the required gems:

env GEM_HOME=~/.vagrant.d/gems gem install buff-extensions -v 0.3.0
env GEM_HOME=~/.vagrant.d/gems gem install buff-extensions -v 1.0.0
vagrant plugin install vagrant-berkshelf --plugin-version 1.3.7

I haven't completed my testing so I am unsure if there will be a conflict while running.

--- EDIT ---

If you do the above, the plugin fails to load.
Instead, make sure to install an older version of the varia_model gem. I suggest 0.3.2. This gem does not require a later version of buff-extensions

env GEM_HOME=~/.vagrant.d/gems gem install varia_model -v 0.3.2
vagrant plugin install vagrant-berkshelf --plugin-version 1.3.7
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top