vagrant-digitalocean 0.1.2 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Gemfile CHANGED
@@ -1,4 +1,5 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- gem 'vagrant', :git => 'git://github.com/mitchellh/vagrant.git', :tag => 'v1.2.1'
3
+ gem 'vagrant', :git => 'git://github.com/mitchellh/vagrant.git', :tag => 'v1.2.2'
4
+ gem 'vagrant-omnibus'
4
5
  gemspec
data/README.md CHANGED
@@ -4,6 +4,13 @@ Digital Ocean Vagrant Provider
4
4
  management of [Digital Ocean](https://www.digitalocean.com/) droplets
5
5
  (instances).
6
6
 
7
+ **NOTE:** The Chef provisioner is no longer supported by default (as of 0.2.0).
8
+ Please use the `vagrant-omnibus` plugin to install Chef on Vagrant-managed
9
+ machines. This plugin provides control over the specific version of Chef
10
+ to install. The custom `rebuild` command will not work until a pull request
11
+ is accepted within the `vagrant-omnibus` project. I will update the README
12
+ when this is completed.
13
+
7
14
  Current features include:
8
15
  - create and destroy droplets
9
16
  - power on and off droplets
@@ -65,6 +72,9 @@ Please note the following:
65
72
  extension.
66
73
  - You *must* specify your Digital Ocean Client and API keys. These may be
67
74
  found on the control panel within the *My Settings > API Access* section.
75
+ - The Chef provisioner is installed via the
76
+ [`vagrant-omnibus` plugin](https://github.com/schisamo/vagrant-omnibus).
77
+ Please see its documentation for details.
68
78
 
69
79
  **Supported Configuration Attributes**
70
80
 
@@ -89,8 +99,7 @@ set.
89
99
 
90
100
  *NOTE:* For those using a 0.0.x version of the provider,
91
101
  `provider.ssh_username` and `provider.ssh_private_key_path` have been removed
92
- in favor of the configuration options above. This approach better aligns the
93
- provider with upcoming changes in Vagrant 1.2.
102
+ in favor of the configuration options above.
94
103
 
95
104
  Run
96
105
  ---
@@ -7,7 +7,6 @@ require 'vagrant-digitalocean/actions/rebuild'
7
7
  require 'vagrant-digitalocean/actions/reload'
8
8
  require 'vagrant-digitalocean/actions/setup_user'
9
9
  require 'vagrant-digitalocean/actions/setup_sudo'
10
- require 'vagrant-digitalocean/actions/setup_provisioner'
11
10
  require 'vagrant-digitalocean/actions/setup_key'
12
11
  require 'vagrant-digitalocean/actions/sync_folders'
13
12
  require 'vagrant-digitalocean/actions/modify_provision_path'
@@ -70,7 +69,6 @@ module VagrantPlugins
70
69
  case env[:machine_state]
71
70
  when :active
72
71
  b.use Provision
73
- b.use SetupProvisioner
74
72
  b.use ModifyProvisionPath
75
73
  b.use SyncFolders
76
74
  when :off
@@ -1,5 +1,5 @@
1
1
  module VagrantPlugins
2
2
  module DigitalOcean
3
- VERSION = '0.1.2'
3
+ VERSION = '0.2.0'
4
4
  end
5
5
  end
data/locales/en.yml CHANGED
@@ -14,7 +14,6 @@ en:
14
14
  reloading: "Rebooting the droplet..."
15
15
  creating_user: "Creating user account: %{user}..."
16
16
  modifying_sudo: "Modifying sudoers file to remove tty requirement..."
17
- installing_provisioner: "Installing provisioner: %{provisioner}..."
18
17
  using_key: "Using existing SSH key: %{name}"
19
18
  creating_key: "Creating new SSH key: %{name}..."
20
19
  rsyncing: "Rsyncing folder: %{hostpath} => %{guestpath}..."
data/test/Vagrantfile CHANGED
@@ -1,12 +1,15 @@
1
1
  Vagrant.require_plugin('vagrant-digitalocean')
2
+ Vagrant.require_plugin('vagrant-omnibus')
2
3
 
3
4
  Vagrant.configure('2') do |config|
5
+ config.omnibus.chef_version = :latest
6
+
4
7
  config.vm.box = 'digital_ocean'
5
8
 
6
9
  config.ssh.username = 'tester'
7
10
  config.ssh.private_key_path = 'test_id_rsa'
8
11
 
9
- config.vm.synced_folder '/vagrant', '.', :id => 'vagrant-root', :disabled => true
12
+ config.vm.synced_folder '.', '/vagrant', :disabled => true
10
13
 
11
14
  config.vm.provider :digital_ocean do |provider|
12
15
  provider.client_id = ENV['DO_CLIENT_ID']
@@ -31,7 +34,7 @@ Vagrant.configure('2') do |config|
31
34
 
32
35
  config.vm.define :centos do |centos|
33
36
  centos.vm.provider :digital_ocean do |provider|
34
- provider.image = 'CentOS 6.3 x64'
37
+ provider.image = 'CentOS 6.4 x64'
35
38
  end
36
39
  end
37
40
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vagrant-digitalocean
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-04-25 00:00:00.000000000 Z
12
+ date: 2013-06-14 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: faraday
@@ -84,7 +84,6 @@ files:
84
84
  - lib/vagrant-digitalocean/actions/rebuild.rb
85
85
  - lib/vagrant-digitalocean/actions/reload.rb
86
86
  - lib/vagrant-digitalocean/actions/setup_key.rb
87
- - lib/vagrant-digitalocean/actions/setup_provisioner.rb
88
87
  - lib/vagrant-digitalocean/actions/setup_sudo.rb
89
88
  - lib/vagrant-digitalocean/actions/setup_user.rb
90
89
  - lib/vagrant-digitalocean/actions/sync_folders.rb
@@ -1,41 +0,0 @@
1
- module VagrantPlugins
2
- module DigitalOcean
3
- module Actions
4
- class SetupProvisioner
5
- def initialize(app, env)
6
- @app = app
7
- @machine = env[:machine]
8
- @logger =
9
- Log4r::Logger.new('vagrant::digitalocean::setup_provisioner')
10
- end
11
-
12
- def call(env)
13
- # check if provisioning is enabled
14
- enabled = true
15
- enabled = env[:provision_enabled] if env.has_key?(:provision_enabled)
16
- return @app.call(env) if !enabled
17
-
18
- # check if a chef provisioner is configured
19
- provisioners = @machine.config.vm.provisioners
20
- configured = provisioners.reduce(false) do |c, provisioner|
21
- provisioner.name =~ /chef/
22
- end
23
- return @app.call(env) if !configured
24
-
25
- # check if chef is already installed
26
- command = 'which chef-solo'
27
- code = @machine.communicate.execute(command, :error_check => false)
28
- return @app.call(env) if code == 0
29
-
30
- # install chef
31
- key = 'vagrant_digital_ocean.info.installing_provisioner'
32
- env[:ui].info I18n.t(key, { :provisioner => 'chef' })
33
- command = 'wget -O - http://www.opscode.com/chef/install.sh | bash'
34
- @machine.communicate.sudo(command)
35
-
36
- @app.call(env)
37
- end
38
- end
39
- end
40
- end
41
- end