hashicorp / vagrant

Vagrant is a tool for building and distributing development environments.
https://www.vagrantup.com
Other
26.31k stars 4.43k forks source link

Vagrant 2.2.4 fails to install vagrant-vbguest plugin #10826

Open dsofeir opened 5 years ago

dsofeir commented 5 years ago

Bug description

Plugin 'vagrant-vbguest' won't install after fresh install of vagrant

Vagrant version

2.2.4

Host operating system

OpenSUSE Tumbleweed 5.0.9-1-default

Vagrantfile

# -*- mode: ruby -*-
# vi: set ft=ruby :

# All Vagrant configuration is done below. The "2" in Vagrant.configure
# configures the configuration version (we support older styles for
# backwards compatibility). Please don't change it unless you know what
# you're doing.
Vagrant.configure("2") do |config|
  # The most common configuration options are documented and commented below.
  # For a complete reference, please see the online documentation at
  # https://docs.vagrantup.com.

  # Every Vagrant development environment requires a box. You can search for
  # boxes at https://vagrantcloud.com/search.
  config.vm.box = "centos/7"

  # Disable automatic box update checking. If you disable this, then
  # boxes will only be checked for updates when the user runs
  # `vagrant box outdated`. This is not recommended.
  # config.vm.box_check_update = false

  # Create a forwarded port mapping which allows access to a specific port
  # within the machine from a port on the host machine. In the example below,
  # accessing "localhost:8080" will access port 80 on the guest machine.
  # NOTE: This will enable public access to the opened port
  # config.vm.network "forwarded_port", guest: 80, host: 8080

  # Create a forwarded port mapping which allows access to a specific port
  # within the machine from a port on the host machine and only allow access
  # via 127.0.0.1 to disable public access
  # config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"

  # Create a private network, which allows host-only access to the machine
  # using a specific IP.
  # config.vm.network "private_network", ip: "192.168.33.10"

  # Create a public network, which generally matched to bridged network.
  # Bridged networks make the machine appear as another physical device on
  # your network.
  # config.vm.network "public_network"

  # Share an additional folder to the guest VM. The first argument is
  # the path on the host to the actual folder. The second argument is
  # the path on the guest to mount the folder. And the optional third
  # argument is a set of non-required options.
  # config.vm.synced_folder "../data", "/vagrant_data"

  # Provider-specific configuration so you can fine-tune various
  # backing providers for Vagrant. These expose provider-specific options.
  # Example for VirtualBox:
  #
  # config.vm.provider "virtualbox" do |vb|
  #   # Display the VirtualBox GUI when booting the machine
  #   vb.gui = true
  #
  #   # Customize the amount of memory on the VM:
  #   vb.memory = "1024"
  # end
  #
  # View the documentation for the provider you are using for more
  # information on available options.

  # Enable provisioning with a shell script. Additional provisioners such as
  # Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the
  # documentation for more information about their specific syntax and use.
  # config.vm.provision "shell", inline: <<-SHELL
  #   apt-get update
  #   apt-get install -y apache2
  # SHELL

  # david@cohr.net.au
  config.vm.network "forwarded_port", guest: 80, host: 58080, host_ip: "127.0.0.1"
  config.vm.network "forwarded_port", guest: 3306, host: 53306, host_ip: "127.0.0.1"

  config.vm.synced_folder ".", "/vagrant", type: "virtualbox"
  config.vm.synced_folder "/home/david/Programming/Mercury/mercury.git/", "/srv/www/public/mercury", type: "virtualbox"

  config.vm.provision "ansible_local" do |ansible|
    ansible.playbook = "provisioning/ansible/provision.yml"
  end

  config.trigger.after :up do |trigger|
    trigger.run_remote = { path:"triggers/on_boot/run.sh"}
  end

end

Debug output

See: https://gist.github.com/dsofeir/ccd78030262839d80ed85964a52037f2

Expected behavior

The plugin 'vagrant-vbguest' should have installed

Actual behavior

The plugin 'vagrant-vbguest' failed to install with error:

Bundler, the underlying system Vagrant uses to install plugins,
reported an error. The error is shown below. These errors are usually
caused by misconfigured plugin installations or transient network
issues. The error from Bundler is:

conflicting dependencies net-scp (= 1.2.1) and net-scp (= 2.0.0)
  Activated net-scp-2.0.0
  which does not match conflicting dependency (= 1.2.1)

  Conflicting dependency chains:
    net-scp (= 2.0.0), 2.0.0 activated

  versus:
    net-scp (= 1.2.1)

  Gems matching net-scp (= 1.2.1):
    net-scp-1.2.1

Note: Setting VAGRANT_DISABLE_STRICT_DEPENDENCY_ENFORCEMENT=1 temporarily fixes the problem

Steps to reproduce

  1. run command: vagrant plugin install vagrant-vbguest

References

briancain commented 5 years ago

Hi @dsofeir - Just to check, do you have any other plugins installed with vagrant? Does it work after you run vagrant plugin expunge? I just tried with a fresh install of Vagrant and I was able to install that plugin without issue:

vagrant@vagrant:~$ vagrant plugin install vagrant-vbguest
Installing the 'vagrant-vbguest' plugin. This can take a few minutes...
Fetching: micromachine-2.0.0.gem (100%)
Fetching: vagrant-vbguest-0.17.2.gem (100%)
Installed the plugin 'vagrant-vbguest (0.17.2)'!
vagrant@vagrant:~$ vagrant -v
Vagrant 2.2.4
vagrant@vagrant:~$ vagrant plugin list
vagrant-vbguest (0.17.2, global)
dsofeir commented 5 years ago

Hi @briancain The short answer is: No, I had no other plugins installed.

The long answer is: This happened spontaneously on an existing installation. So I first tried vagrant plugin update, then vagrant plugin expunge, then I deleted the vagrant box and also deleted ~/.vagrant.d, then tried reinstalling vagrant. With all those it still did not work. The solution that worked in the end was setting VAGRANT_DISABLE_STRICT_DEPENDENCY_ENFORCEMENT=1.

Have you noticed in the debug output (https://gist.github.com/dsofeir/ccd78030262839d80ed85964a52037f2), line 318-319, I have both version 1.2.1 and 2.0.0 of the net-scp gem installed on my system. Is this the case in the environment you are trying to recreate the error on?

briancain commented 5 years ago

@dsofeir - Do you have the net-scp gem installed else where on your system, or did you install it directly into the gems folder for Vagrants embedded gems directory yourself?

I tried reproducing it with a fresh install of Vagrant and no other plugins installed. You shouldn't have multiple versions of net-scp installed I think unless you have other plugins installed and or installed the other gem version yourself.

dsofeir commented 5 years ago

@briancain - No, I did not install net-scp myself, nor do I have any other Ruby applications on my system. So I presume vagrant updated/installed this itself?

If I remove v2.0.0 of the net-scp gem with command gem uninstall net-scp --version 2.0.0 the vagrant-vbguest plugin installs correctly.

So I suppose the problem is that vagrant's dependency on version 1.2.1 of net-scp means it is likely to conflict for certain users. For example they may have another Ruby application which requires v2.0.0 (which I do not). Could Bundler, not be configured to use 1.2.1 if it is available?

briancain commented 5 years ago

@dsofeir - How did you install Vagrant? Did you use one of the packages on https://www.vagrantup.com/? It looks like your Vagrant is using system ruby, where as the officially supported packages have its own isolated set of gems, which shouldn't have this issue at all.

dsofeir commented 5 years ago

@briancain - I installed Vagrant using the OpenSUSE package. A fair point, I will contact the package maintainer. Thank you for your help.

dcermak commented 5 years ago

Hi, I'm the package maintainer of vagrant in openSUSE. This error is caused by vagrant plugin install using Bundler to resolve the gem dependencies: Bundler first looks if the requested gem is already present on the system and then picks a version. I don't know why it decides to pick v2.0.0 of net-scp, as vagrant-vbguest does not depend on net-scp and vagrant itself requires ~> 1.2.0.

The simplest solution to these kinds of problems is to delete the gems with the wrong version (preferably via the same method as it was installed, i.e. rpms via zypper), run vagrant plugin install and install the removed gems again afterwards (if they are actually required).

From a my perspective there is unfortunately very little that I can do to prevent these kinds of problems: the only bullet proof way that doesn't involve deactivating plugin installation is to confine vagrant and all it's dependent gems into a separate directory. But that would involve duplicating a huge number of packages and is nothing that I have time for.

I have started to create a RPM of vagrant-vbguest which does not exhibit these issues, as it is installed in a different way. Unfortunately it is currently lacking a dependent gem and is thus not usable yet.

chrisroberts commented 5 years ago

@dcermak Hi! Vagrant does not use bundler for dependency resolution. It did at one point in the past but that integration was replaced some time ago. Vagrant is built around using the installer packages which provide an isolate environment which Vagrant operates in. This results in a specific behavior when it comes to installed gems (where the defined "system" gems are only those vendored within the Vagrant installer package). Running Vagrant outside of the installers is generally done using bundler, which provides the same type of environment.

I'll have a look at how the resolution behaves when running as a system installed gem and see if I can fix the issue there.

dcermak commented 5 years ago

Vagrant does not use bundler for dependency resolution.

Hm, then I don't really understand the error that @dsofeir got from vagrant plugin install vagrant-vbguest which specifically says that it got this error from Bundler.

This results in a specific behavior when it comes to installed gems (where the defined "system" gems are only those vendored within the Vagrant installer package).

This behavior won't be present in the RPM package on openSUSE & Fedora (whose approach I mostly copied), as we install vagrant like any other gem (only difference is that it lands in a different directory). Vagrant itself is invoked via a wrapper script that sets GEM_PATH to the system gem directory, ~/.vagrant.d/ and a directory where we install vagrant plugins into.

Unfortunately I am really not a packaging expert when it comes to rubygems, so please forgive me if parts of the above don't make any sense.

CC @voxik (who authored the vagrant packaging approach that I ported to openSUSE)

duritong commented 5 years ago

I had a similar issue with that:

Installing the 'vagrant-vbguest' plugin. This can take a few minutes...
Bundler, the underlying system Vagrant uses to install plugins,
reported an error. The error is shown below. These errors are usually
caused by misconfigured plugin installations or transient network
issues. The error from Bundler is:

conflicting dependencies bundler (= 1.16.6) and bundler (= 1.17.2)
  Activated bundler-1.17.2
  which does not match conflicting dependency (= 1.16.6)

  Conflicting dependency chains:
    bundler (= 1.17.2), 1.17.2 activated

  versus:
    bundler (= 1.16.6)

  Gems matching bundler (= 1.16.6):
    bundler-1.16.6

Also on Fedora 30. I fixed it by using VAGRANT_DISABLE_STRICT_DEPENDENCY_ENFORCEMENT=1 to prefix my command.

voxik commented 5 years ago

Well, the problem on Fedora is, that we are using more recent versions of some packages then Vagrant itself uses and we have to modify the dependency chain. But when the RubyGems dep solver internally used by Vagrant tries to resolve the dependecies to be able to install the plugin, it takes the dependecy information from rubygems.org instead of reflecting the local dependencies.

The best option is to package this plugin into RPM. The other option is go to talk to Bundler/RubyGems upstream that they should respect what is on the system.

voxik commented 5 years ago

Actually, there is third option. Help Fog folks to have their dependency chain in shape and help Vagrant folks to update their dependencies.

voxik commented 5 years ago

Help Fog folks to have their dependency chain in shape

Actually this is probably relevant just to vagrant-libvirt users.

voxik commented 5 years ago

Also, this message should have been modified long time ago:

https://github.com/hashicorp/vagrant/blob/master/templates/locales/en.yml#L705

CBrazel commented 5 years ago

I had the same problem on Fedora 30.

$ vagrant plugin install vagrant-vbguest
Installing the 'vagrant-vbguest' plugin. This can take a few minutes...
Bundler, the underlying system Vagrant uses to install plugins,
reported an error. The error is shown below. These errors are usually
caused by misconfigured plugin installations or transient network
issues. The error from Bundler is:

conflicting dependencies fog-core (~> 1.43.0) and fog-core (= 2.1.2)
  Activated fog-core-2.1.2
  which does not match conflicting dependency (~> 1.43.0)

  Conflicting dependency chains:
    fog-core (= 2.1.2), 2.1.2 activated

  versus:
    vagrant-libvirt (> 0), 0.0.41 activated, depends on
    fog-core (~> 1.43.0)
$ vagrant plugin list
vagrant-libvirt (0.0.45, system)

In the end i was not able to install any plugin. This problem is very annoying and drove me nuts because it was difficult to understand the core problem (no ruby or vagrant dev) and it appeared out of nowhere. But with VAGRANT_DISABLE_STRICT_DEPENDENCY_ENFORCEMENT=1 i was able to reactivate my vagrant environment. Thx for the tip. :-)

dsofeir commented 5 years ago

@CBrazel Today I also encountered the issue with 'fog-core' on OpenSUSE:

Bundler, the underlying system Vagrant uses to install plugins,
reported an error. The error is shown below. These errors are usually
caused by misconfigured plugin installations or transient network
issues. The error from Bundler is:

conflicting dependencies fog-core (~> 1.43.0) and fog-core (= 2.1.2)
  Activated fog-core-2.1.2
  which does not match conflicting dependency (~> 1.43.0)

  Conflicting dependency chains:
    fog-core (= 2.1.2), 2.1.2 activated

  versus:
    vagrant-libvirt (> 0), 0.0.41 activated, depends on
    fog-core (~> 1.43.0)
thdelattre commented 5 years ago

Having the exact same issue as @dsofeir on Fedora 30, after running vagrant plugin explunge.

CrustyBarnacle commented 5 years ago

Same issue as @dsofeir too:

➜  splunk_tutorial lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Pop!_OS 19.04
Release:    19.04
Codename:   disco
  1. Removed vagrant provided by distro sudo apt purge vagrant && sudo apt autoremove -y

  2. Downloaded latest vagrant https://releases.hashicorp.com/vagrant/2.2.6/vagrant_2.2.6_x86_64.deb

  3. Installed vagrant sudo dpkg -i vagrant_2.2.6_x86_64.deb

Plugin install works with no errors! :-D

vagrant plugin install vagrant-vbguest                                       
Installing the 'vagrant-vbguest' plugin. This can take a few minutes...
Fetching: micromachine-3.0.0.gem (100%)
Fetching: vagrant-vbguest-0.20.0.gem (100%)
Installed the plugin 'vagrant-vbguest (0.20.0)'!
CrustyBarnacle commented 5 years ago

Duplicate of #292 https://github.com/dotless-de/vagrant-vbguest/issues/292

dcermak commented 5 years ago

Honestly, this all looks a bit like vagrant might not be doing dependency resolution optimally or at least that it rejects some potentially valid resolutions as invalid. Otherwise we wouldn't be able to install vagrant plugins as RPMs (they have mostly the same dependencies as the gems and RPM also verifies that each dependency gets resolved).

But I can be very well wrong in this regard, because at least the vagrant-libvirt rpm is patched to depend on a more recent version of fog-libvirt.

devopstales commented 4 years ago

Same with 2.2.6 on Fedora 31

vagrant plugin install vagrant-vbguest
Installing the 'vagrant-vbguest' plugin. This can take a few minutes...
Vagrant failed to properly resolve required dependencies. These
errors can commonly be caused by misconfigured plugin installations
or transient network issues. The reported error is:

conflicting dependencies fog-core (~> 1.43.0) and fog-core (= 2.1.2)
  Activated fog-core-2.1.2
  which does not match conflicting dependency (~> 1.43.0)

  Conflicting dependency chains:
    fog-core (= 2.1.2), 2.1.2 activated

  versus:
    vagrant-libvirt (> 0), 0.0.41 activated, depends on
    fog-core (~> 1.43.0)
wickedviking commented 4 years ago

Same with Pop!_OS/Ubuntu 19.10

$ vagrant plugin install vagrant-vbguest
Installing the 'vagrant-vbguest' plugin. This can take a few minutes...
Bundler, the underlying system Vagrant uses to install plugins,
reported an error. The error is shown below. These errors are usually
caused by misconfigured plugin installations or transient network
issues. The error from Bundler is:

conflicting dependencies fog-core (~> 1.43.0) and fog-core (= 2.1.0)
  Activated fog-core-2.1.0
  which does not match conflicting dependency (~> 1.43.0)

  Conflicting dependency chains:
    fog-core (= 2.1.0), 2.1.0 activated

  versus:
    vagrant-libvirt (> 0), 0.0.41 activated, depends on
    fog-core (~> 1.43.0)

I have expunged / repaired and completely deleted and reinstalled the ~/.vagrant.d/gems with no change.

$ apt info vagrant

Package: vagrant
Version: 2.2.3+dfsg-1ubuntu2
Priority: optional
Section: universe/admin
Origin: Ubuntu
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Debian Ruby Team <pkg-ruby-extras-maintainers@lists.alioth.debian.org>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 3,095 kB
Depends: libarchive-tools, curl, openssh-client, rsync, ruby, ruby-bcrypt-pbkdf (>= 1.0.0), ruby-childprocess (>= 0.6.0), ruby-ed25519 (>= 1.2.4), ruby-erubis (>= 2.7.0), ruby-i18n (>= 0.7.0), ruby-listen (>= 3.1.5), ruby-log4r (>= 1.1.9), ruby-net-scp (>= 1.2.0), ruby-net-sftp (>= 2.1), ruby-net-ssh (>= 5.1.0), ruby-rest-client (>= 1.6.0), ruby-vagrant-cloud (>= 2.0.2), ruby-zip (>= 1.2.2)
Recommends: vagrant-libvirt
Suggests: virtualbox (>= 4.0)
Homepage: https://www.vagrantup.com
Ruby-Versions: all
Download-Size: 412 kB
APT-Manual-Installed: yes
APT-Sources: http://us.archive.ubuntu.com/ubuntu eoan/universe amd64 Packages
Description: Tool for building and distributing virtualized development environments
 This package provides the tools to create and configure lightweight,
 reproducible, and portable virtual environments.
 .
 Vagrant uses Oracle’s VirtualBox to create its virtual machines and then
 uses Chef or Puppet to provision them.

$ uname -r
5.3.0-7625-generic

$ cat /etc/*release*
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=19.10
DISTRIB_CODENAME=eoan
DISTRIB_DESCRIPTION="Pop!_OS 19.10"
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=19.10
DISTRIB_CODENAME=eoan
DISTRIB_DESCRIPTION="Ubuntu 19.10"
NAME="Pop!_OS"
VERSION="19.10"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Pop!_OS 19.10"
VERSION_ID="19.10"
HOME_URL="https://system76.com/pop"
SUPPORT_URL="http://support.system76.com"
BUG_REPORT_URL="https://github.com/pop-os/pop/issues"
PRIVACY_POLICY_URL="https://system76.com/privacy"
VERSION_CODENAME=eoan
UBUNTU_CODENAME=eoan
LOGO=distributor-logo-pop-os
NAME="Pop!_OS"
VERSION="19.10"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Pop!_OS 19.10"
VERSION_ID="19.10"
HOME_URL="https://system76.com/pop"
SUPPORT_URL="http://support.system76.com"
BUG_REPORT_URL="https://github.com/pop-os/pop/issues"
PRIVACY_POLICY_URL="https://system76.com/privacy"
VERSION_CODENAME=eoan
UBUNTU_CODENAME=eoan
LOGO=distributor-logo-pop-os

The big debug dump:

$ VAGRANT_LOG=debug vagrant plugin install --verbose vagrant-vbguest

 INFO global: Vagrant version: 2.2.3
 INFO global: Ruby version: 2.5.5
 INFO global: RubyGems version: 2.7.6.2
 INFO global: VAGRANT_LOG="debug"
 INFO global: VAGRANT_NO_PLUGINS="1"
 INFO global: VAGRANT_DISABLE_PLUGIN_INIT="1"
 WARN global: resolv replacement has not been enabled!
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/providers/hyperv/plugin.rb
 INFO manager: Registered plugin: Hyper-V provider
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/providers/docker/plugin.rb
 INFO manager: Registered plugin: docker-provider
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/providers/virtualbox/plugin.rb
 INFO manager: Registered plugin: VirtualBox provider
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/kali/plugin.rb
 INFO manager: Registered plugin: Kali guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/bsd/plugin.rb
 INFO manager: Registered plugin: BSD-based guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/gentoo/plugin.rb
 INFO manager: Registered plugin: Gentoo guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/esxi/plugin.rb
 INFO manager: Registered plugin: ESXi guest.
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/freebsd/plugin.rb
 INFO manager: Registered plugin: FreeBSD guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/dragonflybsd/plugin.rb
 INFO manager: Registered plugin: DragonFly BSD guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/linux/plugin.rb
 INFO manager: Registered plugin: Linux guest.
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/trisquel/plugin.rb
 INFO manager: Registered plugin: Trisquel guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/tinycore/plugin.rb
 INFO manager: Registered plugin: TinyCore Linux guest.
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/solaris/plugin.rb
 INFO manager: Registered plugin: Solaris guest.
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/alt/plugin.rb
 INFO manager: Registered plugin: ALT Platform guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/windows/plugin.rb
 INFO manager: Registered plugin: Windows guest.
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/darwin/plugin.rb
 INFO manager: Registered plugin: Darwin guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/funtoo/plugin.rb
 INFO manager: Registered plugin: Funtoo guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/solaris11/plugin.rb
 INFO manager: Registered plugin: Solaris 11 guest.
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/slackware/plugin.rb
 INFO manager: Registered plugin: Slackware guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/photon/plugin.rb
 INFO manager: Registered plugin: VMware Photon guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/haiku/plugin.rb
 INFO manager: Registered plugin: Haiku guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/elementary/plugin.rb
 INFO manager: Registered plugin: Elementary guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/amazon/plugin.rb
 INFO manager: Registered plugin: Amazon Linux guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/suse/plugin.rb
 INFO manager: Registered plugin: SUSE guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/debian/plugin.rb
 INFO manager: Registered plugin: Debian guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/arch/plugin.rb
 INFO manager: Registered plugin: Arch guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/redhat/plugin.rb
 INFO manager: Registered plugin: Red Hat Enterprise Linux guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/netbsd/plugin.rb
 INFO manager: Registered plugin: NetBSD guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/atomic/plugin.rb
 INFO manager: Registered plugin: Atomic Host guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/smartos/plugin.rb
 INFO manager: Registered plugin: SmartOS guest.
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/coreos/plugin.rb
 INFO manager: Registered plugin: CoreOS guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/nixos/plugin.rb
 INFO manager: Registered plugin: NixOS guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/pld/plugin.rb
 INFO manager: Registered plugin: PLD Linux guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/openbsd/plugin.rb
 INFO manager: Registered plugin: OpenBSD guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/omnios/plugin.rb
 INFO manager: Registered plugin: OmniOS guest.
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/mint/plugin.rb
 INFO manager: Registered plugin: Mint guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/fedora/plugin.rb
 INFO manager: Registered plugin: Fedora guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/guests/ubuntu/plugin.rb
 INFO manager: Registered plugin: Ubuntu guest
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/hosts/bsd/plugin.rb
 INFO manager: Registered plugin: BSD host
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/hosts/gentoo/plugin.rb
 INFO manager: Registered plugin: Gentoo host
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/hosts/freebsd/plugin.rb
 INFO manager: Registered plugin: FreeBSD host
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/hosts/linux/plugin.rb
 INFO manager: Registered plugin: Linux host
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/hosts/alt/plugin.rb
 INFO manager: Registered plugin: ALT Platform host
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/hosts/windows/plugin.rb
 INFO manager: Registered plugin: Windows host
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/hosts/darwin/plugin.rb
 INFO manager: Registered plugin: Mac OS X host
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/hosts/slackware/plugin.rb
 INFO manager: Registered plugin: Slackware host
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/hosts/suse/plugin.rb
 INFO manager: Registered plugin: SUSE host
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/hosts/arch/plugin.rb
 INFO manager: Registered plugin: Arch host
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/hosts/redhat/plugin.rb
 INFO manager: Registered plugin: Red Hat Enterprise Linux host
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/hosts/void/plugin.rb
 INFO manager: Registered plugin: Void host
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/hosts/null/plugin.rb
 INFO manager: Registered plugin: null host
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/provisioners/cfengine/plugin.rb
 INFO manager: Registered plugin: CFEngine Provisioner
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/provisioners/docker/plugin.rb
 INFO manager: Registered plugin: docker
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/provisioners/file/plugin.rb
 INFO manager: Registered plugin: file
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/provisioners/puppet/plugin.rb
 INFO manager: Registered plugin: puppet
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/provisioners/ansible/plugin.rb
 INFO manager: Registered plugin: ansible
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/provisioners/salt/plugin.rb
 INFO manager: Registered plugin: salt
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/provisioners/chef/plugin.rb
 INFO manager: Registered plugin: chef
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/provisioners/shell/plugin.rb
 INFO manager: Registered plugin: shell
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/pushes/local-exec/plugin.rb
 INFO manager: Registered plugin: local-exec
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/pushes/atlas/plugin.rb
 INFO manager: Registered plugin: atlas
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/pushes/noop/plugin.rb
 INFO manager: Registered plugin: noop
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/pushes/heroku/plugin.rb
 INFO manager: Registered plugin: heroku
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/pushes/ftp/plugin.rb
 INFO manager: Registered plugin: ftp
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/synced_folders/smb/plugin.rb
 INFO manager: Registered plugin: SMB synced folders
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/synced_folders/rsync/plugin.rb
 INFO manager: Registered plugin: RSync synced folders
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/synced_folders/nfs/plugin.rb
 INFO manager: Registered plugin: NFS synced folders
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/kernel_v1/plugin.rb
 INFO manager: Registered plugin: kernel
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/communicators/ssh/plugin.rb
 INFO manager: Registered plugin: ssh communicator
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/communicators/winrm/plugin.rb
 INFO manager: Registered plugin: winrm communicator
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/communicators/winssh/plugin.rb
 INFO manager: Registered plugin: windows ssh communicator
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/version/plugin.rb
 INFO manager: Registered plugin: version command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/reload/plugin.rb
 INFO manager: Registered plugin: reload command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/ssh/plugin.rb
 INFO manager: Registered plugin: ssh command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/winrm/plugin.rb
 INFO manager: Registered plugin: winrm command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/snapshot/plugin.rb
 INFO manager: Registered plugin: snapshot command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/plugin/plugin.rb
 INFO manager: Registered plugin: plugin command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/provider/plugin.rb
 INFO manager: Registered plugin: provider command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/port/plugin.rb
 INFO manager: Registered plugin: port command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/help/plugin.rb
 INFO manager: Registered plugin: help command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/status/plugin.rb
 INFO manager: Registered plugin: status command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/powershell/plugin.rb
 INFO manager: Registered plugin: powershell command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/package/plugin.rb
 INFO manager: Registered plugin: package command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/rdp/plugin.rb
 INFO manager: Registered plugin: rdp command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/suspend/plugin.rb
 INFO manager: Registered plugin: suspend command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/ssh_config/plugin.rb
 INFO manager: Registered plugin: ssh-config command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/halt/plugin.rb
 INFO manager: Registered plugin: halt command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/provision/plugin.rb
 INFO manager: Registered plugin: provision command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/validate/plugin.rb
 INFO manager: Registered plugin: validate command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/winrm_config/plugin.rb
 INFO manager: Registered plugin: winrm-config command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/destroy/plugin.rb
 INFO manager: Registered plugin: destroy command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/list-commands/plugin.rb
 INFO manager: Registered plugin: list-commands command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/up/plugin.rb
 INFO manager: Registered plugin: up command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/global-status/plugin.rb
 INFO manager: Registered plugin: global-status command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/box/plugin.rb
 INFO manager: Registered plugin: box command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/cap/plugin.rb
 INFO manager: Registered plugin: cap command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/resume/plugin.rb
 INFO manager: Registered plugin: resume command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/upload/plugin.rb
 INFO manager: Registered plugin: upload command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/push/plugin.rb
 INFO manager: Registered plugin: push command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/init/plugin.rb
 INFO manager: Registered plugin: init command
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/login/plugin.rb
 INFO manager: Registered plugin: vagrant-login
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/cloud/plugin.rb
 INFO manager: Registered plugin: vagrant-cloud
DEBUG global: Loading core plugin: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/kernel_v2/plugin.rb
 INFO manager: Registered plugin: kernel
 INFO vagrant: `vagrant` invoked: ["plugin", "install", "--verbose", "vagrant-vbguest"]
DEBUG vagrant: Creating Vagrant environment
 INFO environment: Environment initialized (#<Vagrant::Environment:0x000055ecc6f62288>)
 INFO environment:   - cwd: /redacted/packer
 INFO environment: Home path: /home/redacted/.vagrant.d
DEBUG environment: Effective local data path: 
 WARN environment: No local data path is set. Local data cannot be stored.
 WARN manager: Plugin loading is disabled
DEBUG manager: Enabling globalized plugins
 WARN manager: Plugin initialization is disabled
 WARN manager: Plugin loading is disabled
 INFO loader: Loading configuration in order: [:home, :root]
DEBUG loader: Configuration loaded successfully, finalizing and returning
DEBUG push: finalizing
 INFO environment: Running hook: environment_plugins_loaded
 INFO runner: Preparing hooks for middleware sequence...
 INFO runner: 1 hooks defined.
 INFO runner: Running action: environment_plugins_loaded #<Vagrant::Action::Builder:0x000055ecc770f440>
 INFO environment: Running hook: environment_load
 INFO runner: Preparing hooks for middleware sequence...
 INFO runner: 1 hooks defined.
 INFO runner: Running action: environment_load #<Vagrant::Action::Builder:0x000055ecc763e8b8>
 WARN checkpoint_client: checkpoint library not found. disabling.
 INFO cli: CLI: [] "plugin" ["install", "--verbose", "vagrant-vbguest"]
DEBUG cli: Invoking command class: VagrantPlugins::CommandPlugin::Command::Root ["install", "--verbose", "vagrant-vbguest"]
DEBUG checkpoint_client: waiting for checkpoint to complete...
DEBUG checkpoint_client: no information received from checkpoint
DEBUG root: Invoking command class: VagrantPlugins::CommandPlugin::Command::Install ["--verbose", "vagrant-vbguest"]
 INFO host: Autodetecting host type for [#<Vagrant::Environment: /redacted/packer>]
DEBUG host: Trying: gentoo
DEBUG host: Trying: freebsd
DEBUG host: Trying: alt
DEBUG host: Trying: darwin
DEBUG host: Trying: slackware
DEBUG host: Trying: suse
DEBUG host: Trying: arch
DEBUG host: Trying: redhat
DEBUG host: Trying: void
DEBUG host: Trying: bsd
DEBUG host: Trying: linux
 INFO host: Detected: linux!
 INFO runner: Preparing hooks for middleware sequence...
 INFO runner: 1 hooks defined.
 INFO runner: Running action:  #<Vagrant::Action::Builder:0x000055ecc69d18c8>
 INFO warden: Calling IN action: #<VagrantPlugins::CommandPlugin::Action::InstallGem:0x000055ecc6c55018>
 INFO interface: info: Installing the 'vagrant-vbguest' plugin. This can take a few minutes...
DEBUG bundler: Enabling strict dependency enforcement
DEBUG bundler: Dependency list for installation:
 - vagrant-libvirt > 0
 - vagrant-vbguest > 0
 - bcrypt_pbkdf = 1.0.1
 - bigdecimal = 1.3.4
 - blankslate = 3.1.3
 - builder = 3.2.3
 - childprocess = 0.9.0
 - cmath = 1.0.0
 - concurrent-ruby = 1.0.5
 - csv = 1.0.0
 - date = 1.0.0
 - dbm = 1.0.0
 - did_you_mean = 1.2.1
 - domain_name = 0.5.20160216
 - ed25519 = 1.2.4
 - erubis = 2.7.0
 - etc = 1.0.0
 - excon = 0.60.0
 - fcntl = 1.0.0
 - ffi = 1.9.10
 - fiddle = 1.0.0
 - fileutils = 1.0.2
 - fog-core = 2.1.0
 - fog-json = 1.2.0
 - fog-libvirt = 0.6.0
 - fog-xml = 0.1.1
 - formatador = 0.2.5
 - gdbm = 2.0.0
 - http-cookie = 1.0.3
 - i18n = 0.7.0
 - io-console = 0.4.6
 - ipaddr = 1.2.0
 - json = 2.1.0
 - listen = 3.1.5
 - log4r = 1.1.10
 - mime-types = 3.2.2
 - mime-types-data = 3.2015.1120
 - minitest = 5.11.3
 - multi_json = 1.12.1
 - net-scp = 2.0.0
 - net-sftp = 2.1.2
 - net-ssh = 5.2.0
 - net-telnet = 0.1.1
 - netrc = 0.11.0
 - nokogiri = 1.10.3
 - oj = 3.8.1
 - openssl = 2.1.2
 - pkg-config = 1.3.8
 - power_assert = 1.1.1
 - psych = 3.0.2
 - rake = 12.3.1
 - rb-inotify = 0.9.10
 - rdoc = 6.0.1
 - rest-client = 2.0.2
 - ruby-libvirt = 0.7.1
 - rubyzip = 1.2.2
 - scanf = 1.0.0
 - sdbm = 1.0.0
 - sqlite3 = 1.3.13
 - stringio = 0.0.1
 - strscan = 1.0.0
 - test-unit = 3.2.8
 - unf = 0.1.4
 - unf_ext = 0.0.7.5
 - vagrant = 2.2.3
 - vagrant_cloud = 2.0.2
 - webrick = 1.4.2
 - xmlrpc = 0.3.0
 - zlib = 1.0.0
DEBUG bundler: Enabling user defined remote RubyGems sources
DEBUG bundler: Enabling default remote RubyGems sources
DEBUG bundler: Adding source - https://gems.hashicorp.com/
DEBUG bundler: Adding source - https://rubygems.org/
DEBUG bundler: Current source list for install: ["https://gems.hashicorp.com/", "https://rubygems.org/"]
DEBUG bundler: Generating new builtin set instance.
DEBUG bundler: Generating new plugin set instance. Skip gems - []
DEBUG bundler: Generating solution set for installation.
ERROR warden: Error occurred: Bundler, the underlying system Vagrant uses to install plugins,
reported an error. The error is shown below. These errors are usually
caused by misconfigured plugin installations or transient network
issues. The error from Bundler is:

conflicting dependencies fog-core (~> 1.43.0) and fog-core (= 2.1.0)
  Activated fog-core-2.1.0
  which does not match conflicting dependency (~> 1.43.0)

  Conflicting dependency chains:
    fog-core (= 2.1.0), 2.1.0 activated

  versus:
    vagrant-libvirt (> 0), 0.0.41 activated, depends on
    fog-core (~> 1.43.0)

 INFO warden: Beginning recovery process...
 INFO warden: Calling recover: #<VagrantPlugins::CommandPlugin::Action::InstallGem:0x000055ecc6c55018>
 INFO warden: Recovery complete.
 INFO environment: Running hook: environment_unload
 INFO runner: Preparing hooks for middleware sequence...
 INFO runner: 1 hooks defined.
 INFO runner: Running action: environment_unload #<Vagrant::Action::Builder:0x000055eccdb594a0>
ERROR vagrant: Vagrant experienced an error! Details:
ERROR vagrant: #<Vagrant::Errors::BundlerError: Bundler, the underlying system Vagrant uses to install plugins,
reported an error. The error is shown below. These errors are usually
caused by misconfigured plugin installations or transient network
issues. The error from Bundler is:

conflicting dependencies fog-core (~> 1.43.0) and fog-core (= 2.1.0)
  Activated fog-core-2.1.0
  which does not match conflicting dependency (~> 1.43.0)

  Conflicting dependency chains:
    fog-core (= 2.1.0), 2.1.0 activated

  versus:
    vagrant-libvirt (> 0), 0.0.41 activated, depends on
    fog-core (~> 1.43.0)

>
ERROR vagrant: Bundler, the underlying system Vagrant uses to install plugins,
reported an error. The error is shown below. These errors are usually
caused by misconfigured plugin installations or transient network
issues. The error from Bundler is:

conflicting dependencies fog-core (~> 1.43.0) and fog-core (= 2.1.0)
  Activated fog-core-2.1.0
  which does not match conflicting dependency (~> 1.43.0)

  Conflicting dependency chains:
    fog-core (= 2.1.0), 2.1.0 activated

  versus:
    vagrant-libvirt (> 0), 0.0.41 activated, depends on
    fog-core (~> 1.43.0)

ERROR vagrant: /usr/share/rubygems-integration/all/gems/vagrant-2.2.3/lib/vagrant/plugin/manager.rb:172:in `rescue in install_plugin'
/usr/share/rubygems-integration/all/gems/vagrant-2.2.3/lib/vagrant/plugin/manager.rb:116:in `install_plugin'
/usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/plugin/action/install_gem.rb:30:in `call'
/usr/share/rubygems-integration/all/gems/vagrant-2.2.3/lib/vagrant/action/warden.rb:34:in `call'
/usr/share/rubygems-integration/all/gems/vagrant-2.2.3/lib/vagrant/action/builder.rb:116:in `call'
/usr/share/rubygems-integration/all/gems/vagrant-2.2.3/lib/vagrant/action/runner.rb:66:in `block in run'
/usr/share/rubygems-integration/all/gems/vagrant-2.2.3/lib/vagrant/util/busy.rb:19:in `busy'
/usr/share/rubygems-integration/all/gems/vagrant-2.2.3/lib/vagrant/action/runner.rb:66:in `run'
/usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/plugin/command/base.rb:14:in `action'
/usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/plugin/command/install.rb:70:in `block in execute'
/usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/plugin/command/install.rb:69:in `each'
/usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/plugin/command/install.rb:69:in `execute'
/usr/share/rubygems-integration/all/gems/vagrant-2.2.3/plugins/commands/plugin/command/root.rb:66:in `execute'
/usr/share/rubygems-integration/all/gems/vagrant-2.2.3/lib/vagrant/cli.rb:58:in `execute'
/usr/share/rubygems-integration/all/gems/vagrant-2.2.3/lib/vagrant/environment.rb:291:in `cli'
/usr/share/rubygems-integration/all/gems/vagrant-2.2.3/bin/vagrant:177:in `<top (required)>'
/usr/bin/vagrant:23:in `load'
/usr/bin/vagrant:23:in `<main>'
 INFO interface: error: Bundler, the underlying system Vagrant uses to install plugins,
reported an error. The error is shown below. These errors are usually
caused by misconfigured plugin installations or transient network
issues. The error from Bundler is:

conflicting dependencies fog-core (~> 1.43.0) and fog-core (= 2.1.0)
  Activated fog-core-2.1.0
  which does not match conflicting dependency (~> 1.43.0)

  Conflicting dependency chains:
    fog-core (= 2.1.0), 2.1.0 activated

  versus:
    vagrant-libvirt (> 0), 0.0.41 activated, depends on
    fog-core (~> 1.43.0)

Bundler, the underlying system Vagrant uses to install plugins,
reported an error. The error is shown below. These errors are usually
caused by misconfigured plugin installations or transient network
issues. The error from Bundler is:

conflicting dependencies fog-core (~> 1.43.0) and fog-core (= 2.1.0)
  Activated fog-core-2.1.0
  which does not match conflicting dependency (~> 1.43.0)

  Conflicting dependency chains:
    fog-core (= 2.1.0), 2.1.0 activated

  versus:
    vagrant-libvirt (> 0), 0.0.41 activated, depends on
    fog-core (~> 1.43.0)

 INFO interface: Machine: error-exit ["Vagrant::Errors::BundlerError", "Bundler, the underlying system Vagrant uses to install plugins,\nreported an error. The error is shown below. These errors are usually\ncaused by misconfigured plugin installations or transient network\nissues. The error from Bundler is:\n\nconflicting dependencies fog-core (~> 1.43.0) and fog-core (= 2.1.0)\n  Activated fog-core-2.1.0\n  which does not match conflicting dependency (~> 1.43.0)\n\n  Conflicting dependency chains:\n    fog-core (= 2.1.0), 2.1.0 activated\n\n  versus:\n    vagrant-libvirt (> 0), 0.0.41 activated, depends on\n    fog-core (~> 1.43.0)\n\n"]
netsensei commented 4 years ago

@CBrazel @dsofeir I encountered the exact same problem on Fedora 31 today when I tried to install vagrant-vbguest:

Bundler, the underlying system Vagrant uses to install plugins,
reported an error. The error is shown below. These errors are usually
caused by misconfigured plugin installations or transient network
issues. The error from Bundler is:

conflicting dependencies fog-core (~> 1.43.0) and fog-core (= 2.1.2)
  Activated fog-core-2.1.2
  which does not match conflicting dependency (~> 1.43.0)

  Conflicting dependency chains:
    fog-core (= 2.1.2), 2.1.2 activated

This is what fixed it for me. I do not know if this is recommended, so I'd be grateful if someone could confirm this.

You need to uninstall vagrant-libvirt which comes out of the box with vagrant:

dnf remove vagrant-libvirt

This is actually a vagrant plugin. But this won't work since it's a "system plugin":

vagrant plugin uninstall vagrant-libvirt

Million dollar question: Is this is a good idea?

In my mind, the correct answer is YMMV. The plugin is a separate project on Github: https://github.com/vagrant-libvirt/vagrant-libvirt and libvirt is a virtualization toolkit / API (https://libvirt.org/). If I understood correctly, libvirt creates another layer of abstraction on top of virtualization platforms like QEMU, XEN, VMWare EXsi,...

So far, I've stuck with vanilla VirtualBox as a single user. Removing vagrant-libvirt doesn't seem to be a problem. But that's just my anecdotal experience talking here.

Even so, after installing vagrant-vbguest, you could simply try and install vagrant-libvirt again, after re-installation, vagrant-vbguest seems to keep working just fine.

Of course, this is just a cheap work around.

dcermak commented 4 years ago

You need to uninstall vagrant-libvirt which comes out of the box with vagrant:

dnf remove vagrant-libvirt

This is actually a vagrant plugin. But this won't work since it's a "system plugin":

vagrant plugin uninstall vagrant-libvirt

Million dollar question: Is this is a good idea?

@netsensei Your approach is a good idea, because by removing the vagrant-libvirt package, you also remove the system-wide gems that cause the dependency "issues". Then once you reinstall vagrant-vbguest, vagrant can do it's slightly flawed dependency resolution (I'm saying flawed here, because the dependencies can be resolved). Since there is no conflict, you can then simply reinstall vagrant-libvirt if you wish to do so.

@briancain @chrisroberts Any chance you'll be able to take a look at how vagrant resolves dependencies so that it can handle these kind of issues more gracefully?

adgnaf commented 4 years ago

Try to delete ~/.vagrant.d, then install the plugin again. I installed vagrant 2.2.6 on ubuntu 18.04 and met similar issue. After delete ~/.vagrant.d and vagrant plugin install vagrant-vbguest is ok.

laurent-indermuehle commented 4 years ago

@netsensei here is an alternative to what you did: (tested on FC31)

sudo dnf remove vagrant
sudo dnf install -y vagrant --setopt=install_weak_deps=False

The second line will re-install vagrant without vagrant-libvirt


I'm having another issue while installing vagrant-vguest plugin:

conflicting dependencies excon (= 0.62.0) and excon (= 0.66.0)
  Activated excon-0.66.0
  which does not match conflicting dependency (= 0.62.0)

  Conflicting dependency chains:
    excon (= 0.66.0), 0.66.0 activated

  versus:
    excon (= 0.62.0)

  Gems matching excon (= 0.62.0):
    excon-0.62.0

I tested every solution proposed here, but none worked. In the end, I removed failed dependencies one by one and ending up with this solution for Fedora 31:

sudo dnf remove vagrant
sudo dnf remove rubygem-excon python3-beaker
sudo gem uninstall excon
sudo gem uninstall -i /usr/share/gems beaker net-ssh byebug rest-client faraday i18n fast_gettext mime-types excon pry-byebug beaker-rspec beaker nokogiri mime-types-data mini_portile2 gpgme
sudo gem install -i /usr/share/gems net-ssh -v 5.1.0
sudo gem uninstall -i /usr/share/gems byebug
sudo gem install -i /usr/share/gems byebug -v 11.0
sudo gem install -i /usr/share/gems rest-client -v 2.0.0
sudo gem install -i /usr/share/gems faraday -v 0.13.1
sudo gem install -i /usr/share/gems i18n -v 0.9.5
sudo gem uninstall -i /usr/share/gems concurrent-ruby
sudo gem install -i /usr/share/gems concurrent-ruby -v 1.0.5
sudo gem install -i /usr/share/gems fast_gettext -v 1.1.2
sudo gem install -i /usr/share/gems mime-types -v 3.3
sudo gem install -i /usr/share/gems excon -v 0.71
sudo gem uninstall -i /usr/share/gems nokogiri
sudo gem install -i /usr/share/gems nokogiri -v 1.8.0
sudo gem install -i /usr/share/gems mini_portile2 -v 2.2.0
sudo dnf install -y vagrant --setopt=install_weak_deps=False
vagrant plugin install vagrant-vbguest

I don't know gem well. Is there an equivalent to Python Virtualenv, to avoid this kind of dependency hell, we could use?

dkowalec commented 4 years ago

vagrant plugin update worked for me after I executed brew cask uninstall vagrant and re-installed it after a brew cleanup.

Thanks

carnnia commented 4 years ago

same issue with vagrant 2.2.8 to fix it i: rm -r ~/.vagrant.d vagrant plugin expunge vagrant up ( had to do this 2 times )

JayKandari commented 4 years ago

vagrant plugin update solves this for me.

bschatz commented 3 years ago
lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 10 (buster)
Release:        10
Codename:       buster

$ vagrant plugin list
No plugins installed.

vagrant plugin install vagrant-vbguest
Installing the 'vagrant-vbguest' plugin. This can take a few minutes...
Bundler, the underlying system Vagrant uses to install plugins,
reported an error. The error is shown below. These errors are usually
caused by misconfigured plugin installations or transient network
issues. The error from Bundler is:

conflicting dependencies excon (= 0.54.0) and excon (= 0.60.0)
  Activated excon-0.60.0
  which does not match conflicting dependency (= 0.54.0)

  Conflicting dependency chains:
    excon (= 0.60.0), 0.60.0 activated

  versus:
    excon (= 0.54.0)

  Gems matching excon (= 0.54.0):
    excon-0.54.0

The thing i dont understand is that after a

sudo apt autoremove

I get another error message:

vagrant plugin install vagrant-vbguest
Installing the 'vagrant-vbguest' plugin. This can take a few minutes...
Bundler, the underlying system Vagrant uses to install plugins,
reported an error. The error is shown below. These errors are usually
caused by misconfigured plugin installations or transient network
issues. The error from Bundler is:

conflicting dependencies minitest (= 5.9.0) and minitest (= 5.11.3)
  Activated minitest-5.11.3
  which does not match conflicting dependency (= 5.9.0)

  Conflicting dependency chains:
    minitest (= 5.11.3), 5.11.3 activated

  versus:
    minitest (= 5.9.0)

  Gems matching minitest (= 5.9.0):
    minitest-5.9.0

sudo vagrant plugin list
No plugins installed.
akramLh005 commented 2 weeks ago

use this, it works!

set VAGRANT_DISABLE_STRICT_DEPENDENCY_ENFORCEMENT=1 && vagrant plugin install <library>

just replace the name of library