scalefactory/vagrant-multiprovider-snap

Breaks vagrant-vmware-fusion with latest plugin updates

adrinux opened this issue · 2 comments

Just updated to:
vagrant osx 1.5.1
vagrant-multiprovider-snap (0.0.9)
vagrant-vmware-fusion (2.3.4)

And vagrant up for a fusion vm breaks with this error:

/Users/adrian/.vagrant.d/gems/gems/vagrant-vmware-fusion-2.3.4/lib/vagrant-vmware-fusion/sudo_helper_cli.rb:53:in `run': undefined method `create' for HashiCorp::VagrantVMwarefusion::Driver:Module (NoMethodError)
    from /Users/adrian/.vagrant.d/gems/gems/vagrant-vmware-fusion-2.3.4/bin/vagrant_vmware_desktop_sudo_helper:19:in `<encoded>'
    from /Users/adrian/.vagrant.d/gems/gems/vagrant-vmware-fusion-2.3.4/bin/vagrant_vmware_desktop_sudo_helper:38:in `RGLoader_load'
    from /Users/adrian/.vagrant.d/gems/gems/vagrant-vmware-fusion-2.3.4/bin/vagrant_vmware_desktop_sudo_helper:38:in `<main>'
  • Uninstalling multiprovider snap plugin allows vagrant up to work
  • This seems similar to the plugin load order problem you discussed with @mitchellh here:
    hashicorp/vagrant#1824

For the moment I've uninstalled this plugin :(

Hi, thanks for the bug report Adrian. Vagrant 1.5 introduced a new Gem-based plugin system and some new challenges. The error you see is because my plugin class (which adds new methods to the HashiCorp::VagrantVMwarefusion::Driver namespace) is loaded before the Fusion provider (exactly the same as the other bug you reference), and I haven't been able to figure out how to force the ordering myself in an analogous way.

Mitchell mentioned something in the IRC channel about putting the dependency in the Gemfile, but I don't want to give the plugin a hard dependency on the fusion provider, since not everyone has that.

I'm hoping to get a bit more time to look at it in the next few days, as it's causing me trouble too!

I believe I've fixed this in v0.0.10 - please give the new version a try and let me know how you get on. I've tested this against version 2.3.6 of the fusion plugin.