This appears to be a compatibility problem between the vultr 0.4.1 module and 0.3.5. If I hack 0.3.5 into the plugins directory, it works.
I get a traceback when I try to vagrant up --provider=vultr on the example.
$ vagrant up --provider=vultr
Bringing machine 'default' up with 'vultr' provider...
/Users/nop/.vagrant.d/gems/2.4.4/gems/vultr-0.4.1/lib/vultr.rb:866: warning: already initialized constant Vultr::APIKey
/Users/nop/.vagrant.d/gems/2.4.4/gems/vultr-0.4.1/lib/vultr.rb:866: warning: previous definition of APIKey was here
/Users/nop/.vagrant.d/gems/2.4.4/gems/vultr-0.4.1/lib/vultr.rb:866: warning: already initialized constant Vultr::APIKey
/Users/nop/.vagrant.d/gems/2.4.4/gems/vultr-0.4.1/lib/vultr.rb:866: warning: previous definition of APIKey was here
/Users/nop/.vagrant.d/gems/2.4.4/gems/vagrant-vultr-0.1.2/lib/vagrant-vultr/helpers/client.rb:139:in `request': API request failed: Method requires authentication, no API key present. (RuntimeError)
from /Users/nop/.vagrant.d/gems/2.4.4/gems/vagrant-vultr-0.1.2/lib/vagrant-vultr/helpers/client.rb:49:in `create_server'
from /Users/nop/.vagrant.d/gems/2.4.4/gems/vagrant-vultr-0.1.2/lib/vagrant-vultr/action/create.rb:35:in `call'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/action/warden.rb:34:in `call'
from /Users/nop/.vagrant.d/gems/2.4.4/gems/vagrant-vultr-0.1.2/lib/vagrant-vultr/action/setup_ssh_key.rb:27:in `call'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/action/warden.rb:95:in `block in finalize_action'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/action/builder.rb:116:in `call'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/action/runner.rb:66:in `block in run'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/util/busy.rb:19:in `busy'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/action/runner.rb:66:in `run'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/action/builtin/call.rb:53:in `call'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/action/builtin/config_validate.rb:25:in `call'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/action/builder.rb:116:in `call'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/action/runner.rb:66:in `block in run'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/util/busy.rb:19:in `busy'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/action/runner.rb:66:in `run'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/machine.rb:239:in `action_raw'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/machine.rb:208:in `block in action'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/environment.rb:614:in `lock'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/machine.rb:194:in `call'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/machine.rb:194:in `action'
from /opt/vagrant/embedded/gems/2.2.3/gems/vagrant-2.2.3/lib/vagrant/batch_action.rb:82:in `block (2 levels) in run'
Here's the Vagrantfile:
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
config.vm.provider :vultr do |vultr, override|
override.ssh.private_key_path = '~/.ssh/id_rsa'
override.vm.box = 'vultr'
override.vm.box_url = 'https://github.com/p0deje/vagrant-vultr/raw/master/box/vultr.box'
vultr.token = 'NPXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' #You can also use VULTR_TOKEN environment variable
vultr.region = 'New Jersey'
vultr.plan = '1024 MB RAM,25 GB SSD,1.00 TB BW'
vultr.os = 'CoreOS Stable'
end
end
This appears to be a compatibility problem between the
vultr
0.4.1 module and 0.3.5. If I hack 0.3.5 into the plugins directory, it works.I get a traceback when I try to
vagrant up --provider=vultr
on the example.Here's the Vagrantfile: