Question

Vagrant does does not work with DO

  • Posted November 30, 2014

config.vm.provider :digital_ocean do |provider| provider.ssh.private_key_path = “~/.ssh/id_rsa” provider.token = “(****************************************************************)” provider.image = “ubuntu-14-04-x64” provider.region = “ams1” provider.size = “1gb” provider.private_networking = true provider.backups_enable = true

end

I tried to bring up a droplet with the shown vagrant config but when I run it I get this vagrant up --provider digital_ocean Bringing machine ‘default’ up with ‘digital_ocean’ provider… There was an issue with the request made to the Digital Ocean API at:

Path: /v2/droplets URI Params: {}

The response status from the API was:

Status: 401 Response: {“id”=>“translation missing: en.status_code.unauthorized.id”, “message”=>“Unable to authenticate you.”}

I have the most recent version of Vagrant and v 0.7.0 of the DO plugin

Subscribe
Share

I am having the same issue all of the sudden today. Is there something going on at DO that is not permitting this all of the sudden?

I had the same problem with Vagrant 1.7.2 and vagrant-digitalocean 0.7.2 I fixed it by making sure I was following the latest example at https://github.com/smdahlen/vagrant-digitalocean/ Specifically, I was incorrectly using a token I had gotten from the old v1 API at https://cloud.digitalocean.com/api_access (That’s meant for provider.client_id and provider.api_key which don’t work any more.)

Try this instead: Generate a new read+write “Personal Access Tokens” at https://cloud.digitalocean.com/settings/applications Copy this token immediately and place it in a file for safe keeping. Then export TOKEN as an environment variable (maybe in your.bashrc) And make sure that it’s definitely in your environment prior to using Vagrant - check on the commandline with echo $TOKEN. Then in your Vagrantfile have this: provider.token = ENV[‘TOKEN’]

I had the same problem with Vagrant 1.7.2 and vagrant-digitalocean 0.7.2 I fixed it by making sure I was following the latest example at https://github.com/smdahlen/vagrant-digitalocean/ Specifically, I was incorrectly using a token I had gotten from the old v1 API at https://cloud.digitalocean.com/api_access (That’s meant for provider.client_id and provider.api_key which don’t work any more.)

Try this instead: Generate a new read+write “Personal Access Tokens” at https://cloud.digitalocean.com/settings/applications Copy this token immediately and place it in a file for safe keeping. Then export TOKEN as an environment variable (maybe in your.bashrc) And make sure that it’s definitely in your environment prior to using Vagrant - check on the commandline with echo $TOKEN. Then in your Vagrantfile have this: provider.token = ENV[‘TOKEN’]

Hello,

the vagrant plugin use apiv2 now

check: provider.token = ‘YOUR TOKEN’

https://github.com/smdahlen/vagrant-digitalocean

Vagrant.configure(‘2’) do |config|

config.vm.provider :digital_ocean do |provider, override| override.ssh.private_key_path = ‘~/.ssh/id_rsa’ override.vm.box = ‘digital_ocean’ override.vm.box_url = “https://github.com/smdahlen/vagrant-digitalocean/raw/master/box/digital_ocean.box

provider.token = 'YOUR TOKEN'
provider.image = 'ubuntu-14-04-x64'
provider.region = 'nyc2'
provider.size = '512mb'

end end

Hello

on the API page, there is a lint to API v1

There you will be able to get cliend_id and a Token for version 1 that is the version that the plugin use

Alvaro.

Just had the same pb. could you update the doc please ? its tripping for newcomers

I’m getting the same error here with Vagrant 1.7.2-2 and the latest DO plugin.

I am getting the exact same 401 msg…glad I’m not the only one. I’ve got latest Vagrant and DO plugin too.


Submit an answer
You can type!ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Hello,

the plugin now use API v2, so check if your Vagranfile have:

provider.token = ‘YOUR TOKEN’

https://github.com/smdahlen/vagrant-digitalocean

Sample code:

Vagrant.configure('2') do |config|

  config.vm.provider :digital_ocean do |provider, override|
    override.ssh.private_key_path = '~/.ssh/id_rsa'
    override.vm.box = 'digital_ocean'
    override.vm.box_url = "https://github.com/smdahlen/vagrant-digitalocean/raw/master/box/digital_ocean.box"

    provider.token = 'YOUR TOKEN'
    provider.image = 'ubuntu-14-04-x64'
    provider.region = 'nyc2'
    provider.size = '512mb'
  end
end