vagrant-vsphere 0.7.0 → 0.7.1

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.
Files changed (40) hide show
  1. data/.gitignore +8 -6
  2. data/Gemfile +10 -10
  3. data/LICENSE.txt +23 -23
  4. data/README.md +180 -175
  5. data/Rakefile +16 -16
  6. data/example_box/metadata.json +2 -2
  7. data/lib/vSphere/action.rb +172 -172
  8. data/lib/vSphere/action/clone.rb +131 -127
  9. data/lib/vSphere/action/close_vsphere.rb +23 -23
  10. data/lib/vSphere/action/connect_vsphere.rb +25 -25
  11. data/lib/vSphere/action/destroy.rb +37 -37
  12. data/lib/vSphere/action/get_ssh_info.rb +37 -37
  13. data/lib/vSphere/action/get_state.rb +45 -45
  14. data/lib/vSphere/action/is_created.rb +15 -15
  15. data/lib/vSphere/action/is_running.rb +20 -20
  16. data/lib/vSphere/action/message_already_created.rb +17 -17
  17. data/lib/vSphere/action/message_not_created.rb +17 -17
  18. data/lib/vSphere/action/message_not_running.rb +18 -18
  19. data/lib/vSphere/action/power_off.rb +27 -27
  20. data/lib/vSphere/action/power_on.rb +31 -31
  21. data/lib/vSphere/action/sync_folders.rb +94 -97
  22. data/lib/vSphere/config.rb +37 -37
  23. data/lib/vSphere/errors.rb +14 -11
  24. data/lib/vSphere/plugin.rb +29 -29
  25. data/lib/vSphere/provider.rb +38 -38
  26. data/lib/vSphere/util/machine_helpers.rb +15 -15
  27. data/lib/vSphere/util/vim_helpers.rb +37 -37
  28. data/lib/vSphere/version.rb +5 -5
  29. data/lib/vagrant-vsphere.rb +17 -17
  30. data/locales/en.yml +66 -65
  31. data/spec/action_spec.rb +116 -116
  32. data/spec/clone_spec.rb +31 -31
  33. data/spec/connect_vsphere_spec.rb +23 -23
  34. data/spec/destroy_spec.rb +30 -30
  35. data/spec/get_ssh_info_spec.rb +30 -30
  36. data/spec/get_state_spec.rb +54 -54
  37. data/spec/is_created_spec.rb +28 -28
  38. data/spec/spec_helper.rb +98 -98
  39. data/vSphere.gemspec +29 -28
  40. metadata +14 -8
data/spec/action_spec.rb CHANGED
@@ -1,116 +1,116 @@
1
- require 'spec_helper'
2
- require 'vagrant'
3
-
4
- describe VagrantPlugins::VSphere::Action do
5
- def run(action)
6
- Vagrant::Action::Runner.new.run described_class.send("action_#{action}"), @env
7
- end
8
-
9
- before :each do
10
- @machine.stub(:id).and_return(EXISTING_UUID)
11
- end
12
-
13
- describe 'up' do
14
- def run_up
15
- run :up
16
- end
17
-
18
- it 'should connect to vSphere' do
19
- VagrantPlugins::VSphere::Action::ConnectVSphere.any_instance.should_receive(:call)
20
-
21
- run_up
22
- end
23
-
24
- it 'should check if the VM exits' do
25
- VagrantPlugins::VSphere::Action::IsCreated.any_instance.should_receive(:call)
26
-
27
- run_up
28
- end
29
-
30
- it 'should create the VM when the VM does already not exist' do
31
- @machine.state.stub(:id).and_return(:not_created)
32
-
33
- VagrantPlugins::VSphere::Action::Clone.any_instance.should_receive(:call)
34
-
35
- run_up
36
- end
37
-
38
- it 'should not create the VM when the VM already exists' do
39
- @machine.state.stub(:id).and_return(:running)
40
-
41
- VagrantPlugins::VSphere::Action::Clone.any_instance.should_not_receive(:call)
42
-
43
- run_up
44
- end
45
- end
46
-
47
- describe 'destroy' do
48
- def run_destroy
49
- run :destroy
50
- end
51
-
52
- it 'should connect to vSphere' do
53
- VagrantPlugins::VSphere::Action::ConnectVSphere.any_instance.should_receive(:call)
54
-
55
- run_destroy
56
- end
57
-
58
- it 'should power off the VM' do
59
- VagrantPlugins::VSphere::Action::PowerOff.any_instance.should_receive(:call)
60
-
61
- run_destroy
62
- end
63
-
64
- it 'should destroy the VM' do
65
- VagrantPlugins::VSphere::Action::Destroy.any_instance.should_receive(:call)
66
-
67
- run_destroy
68
- end
69
- end
70
-
71
- describe 'halt' do
72
- it 'should power off the VM' do
73
- @machine.state.stub(:id).and_return(:running)
74
-
75
- VagrantPlugins::VSphere::Action::PowerOff.any_instance.should_receive(:call)
76
-
77
- run :halt
78
- end
79
- end
80
-
81
- describe 'get state' do
82
- def run_get_state
83
- run :get_state
84
- end
85
-
86
- it 'should connect to vSphere' do
87
- VagrantPlugins::VSphere::Action::ConnectVSphere.any_instance.should_receive(:call)
88
-
89
- run_get_state
90
- end
91
-
92
- it 'should get the power state' do
93
- VagrantPlugins::VSphere::Action::GetState.any_instance.should_receive(:call)
94
-
95
- run_get_state
96
- end
97
- end
98
-
99
- describe 'get ssh info' do
100
- def run_get_ssh_info
101
- run :get_ssh_info
102
- end
103
-
104
- it 'should connect to vSphere' do
105
- VagrantPlugins::VSphere::Action::ConnectVSphere.any_instance.should_receive(:call)
106
-
107
- run_get_ssh_info
108
- end
109
-
110
- it 'should get the power state' do
111
- VagrantPlugins::VSphere::Action::GetSshInfo.any_instance.should_receive(:call)
112
-
113
- run_get_ssh_info
114
- end
115
- end
116
- end
1
+ require 'spec_helper'
2
+ require 'vagrant'
3
+
4
+ describe VagrantPlugins::VSphere::Action do
5
+ def run(action)
6
+ Vagrant::Action::Runner.new.run described_class.send("action_#{action}"), @env
7
+ end
8
+
9
+ before :each do
10
+ @machine.stub(:id).and_return(EXISTING_UUID)
11
+ end
12
+
13
+ describe 'up' do
14
+ def run_up
15
+ run :up
16
+ end
17
+
18
+ it 'should connect to vSphere' do
19
+ VagrantPlugins::VSphere::Action::ConnectVSphere.any_instance.should_receive(:call)
20
+
21
+ run_up
22
+ end
23
+
24
+ it 'should check if the VM exits' do
25
+ VagrantPlugins::VSphere::Action::IsCreated.any_instance.should_receive(:call)
26
+
27
+ run_up
28
+ end
29
+
30
+ it 'should create the VM when the VM does already not exist' do
31
+ @machine.state.stub(:id).and_return(:not_created)
32
+
33
+ VagrantPlugins::VSphere::Action::Clone.any_instance.should_receive(:call)
34
+
35
+ run_up
36
+ end
37
+
38
+ it 'should not create the VM when the VM already exists' do
39
+ @machine.state.stub(:id).and_return(:running)
40
+
41
+ VagrantPlugins::VSphere::Action::Clone.any_instance.should_not_receive(:call)
42
+
43
+ run_up
44
+ end
45
+ end
46
+
47
+ describe 'destroy' do
48
+ def run_destroy
49
+ run :destroy
50
+ end
51
+
52
+ it 'should connect to vSphere' do
53
+ VagrantPlugins::VSphere::Action::ConnectVSphere.any_instance.should_receive(:call)
54
+
55
+ run_destroy
56
+ end
57
+
58
+ it 'should power off the VM' do
59
+ VagrantPlugins::VSphere::Action::PowerOff.any_instance.should_receive(:call)
60
+
61
+ run_destroy
62
+ end
63
+
64
+ it 'should destroy the VM' do
65
+ VagrantPlugins::VSphere::Action::Destroy.any_instance.should_receive(:call)
66
+
67
+ run_destroy
68
+ end
69
+ end
70
+
71
+ describe 'halt' do
72
+ it 'should power off the VM' do
73
+ @machine.state.stub(:id).and_return(:running)
74
+
75
+ VagrantPlugins::VSphere::Action::PowerOff.any_instance.should_receive(:call)
76
+
77
+ run :halt
78
+ end
79
+ end
80
+
81
+ describe 'get state' do
82
+ def run_get_state
83
+ run :get_state
84
+ end
85
+
86
+ it 'should connect to vSphere' do
87
+ VagrantPlugins::VSphere::Action::ConnectVSphere.any_instance.should_receive(:call)
88
+
89
+ run_get_state
90
+ end
91
+
92
+ it 'should get the power state' do
93
+ VagrantPlugins::VSphere::Action::GetState.any_instance.should_receive(:call)
94
+
95
+ run_get_state
96
+ end
97
+ end
98
+
99
+ describe 'get ssh info' do
100
+ def run_get_ssh_info
101
+ run :get_ssh_info
102
+ end
103
+
104
+ it 'should connect to vSphere' do
105
+ VagrantPlugins::VSphere::Action::ConnectVSphere.any_instance.should_receive(:call)
106
+
107
+ run_get_ssh_info
108
+ end
109
+
110
+ it 'should get the power state' do
111
+ VagrantPlugins::VSphere::Action::GetSshInfo.any_instance.should_receive(:call)
112
+
113
+ run_get_ssh_info
114
+ end
115
+ end
116
+ end
data/spec/clone_spec.rb CHANGED
@@ -1,32 +1,32 @@
1
- require 'spec_helper'
2
-
3
- describe VagrantPlugins::VSphere::Action::Clone do
4
- before :each do
5
- @env[:vSphere_connection] = @vim
6
- end
7
-
8
- it 'should create a CloneVM task' do
9
- call
10
- @template.should have_received(:CloneVM_Task).with({
11
- :folder => @data_center,
12
- :name => NAME,
13
- :spec => {}
14
- })
15
- end
16
-
17
- it 'should set the machine id to be the new UUID' do
18
- call
19
- @machine.should have_received(:id=).with(NEW_UUID)
20
- end
21
-
22
- it 'should call the next item in the middleware stack' do
23
- call
24
- @app.should have_received :call
25
- end
26
-
27
- it 'should set static IP when given config spec' do
28
- @machine.provider_config.stub(:customization_spec_name).and_return('spec')
29
- call
30
- @ip.should have_received(:ipAddress=).with('0.0.0.0')
31
- end
1
+ require 'spec_helper'
2
+
3
+ describe VagrantPlugins::VSphere::Action::Clone do
4
+ before :each do
5
+ @env[:vSphere_connection] = @vim
6
+ end
7
+
8
+ it 'should create a CloneVM task' do
9
+ call
10
+ @template.should have_received(:CloneVM_Task).with({
11
+ :folder => @data_center,
12
+ :name => NAME,
13
+ :spec => {}
14
+ })
15
+ end
16
+
17
+ it 'should set the machine id to be the new UUID' do
18
+ call
19
+ @machine.should have_received(:id=).with(NEW_UUID)
20
+ end
21
+
22
+ it 'should call the next item in the middleware stack' do
23
+ call
24
+ @app.should have_received :call
25
+ end
26
+
27
+ it 'should set static IP when given config spec' do
28
+ @machine.provider_config.stub(:customization_spec_name).and_return('spec')
29
+ call
30
+ @ip.should have_received(:ipAddress=).with('0.0.0.0')
31
+ end
32
32
  end
@@ -1,24 +1,24 @@
1
- require 'spec_helper'
2
-
3
- describe VagrantPlugins::VSphere::Action::ConnectVSphere do
4
- before :each do
5
- described_class.new(@app, @env).call(@env)
6
- end
7
-
8
- it 'should connect to vSphere' do
9
- VIM.should have_received(:connect).with({
10
- :host => @env[:machine].provider_config.host,
11
- :user => @env[:machine].provider_config.user,
12
- :password => @env[:machine].provider_config.password,
13
- :insecure => @env[:machine].provider_config.insecure,
14
- })
15
- end
16
-
17
- it 'should add the vSphere connection to the environment' do
18
- @env[:vSphere_connection].should be @vim
19
- end
20
-
21
- it 'should call the next item in the middleware stack' do
22
- @app.should have_received :call
23
- end
1
+ require 'spec_helper'
2
+
3
+ describe VagrantPlugins::VSphere::Action::ConnectVSphere do
4
+ before :each do
5
+ described_class.new(@app, @env).call(@env)
6
+ end
7
+
8
+ it 'should connect to vSphere' do
9
+ VIM.should have_received(:connect).with({
10
+ :host => @env[:machine].provider_config.host,
11
+ :user => @env[:machine].provider_config.user,
12
+ :password => @env[:machine].provider_config.password,
13
+ :insecure => @env[:machine].provider_config.insecure,
14
+ })
15
+ end
16
+
17
+ it 'should add the vSphere connection to the environment' do
18
+ @env[:vSphere_connection].should be @vim
19
+ end
20
+
21
+ it 'should call the next item in the middleware stack' do
22
+ @app.should have_received :call
23
+ end
24
24
  end
data/spec/destroy_spec.rb CHANGED
@@ -1,31 +1,31 @@
1
- require 'spec_helper'
2
-
3
- describe VagrantPlugins::VSphere::Action::Destroy do
4
- before :each do
5
- @env[:vSphere_connection] = @vim
6
- end
7
-
8
- it 'should set the machine id to nil' do
9
- @env[:machine].stub(:id).and_return(MISSING_UUID)
10
-
11
- call
12
-
13
- @env[:machine].should have_received(:id=).with(nil)
14
- end
15
-
16
- it 'should not create a Destroy task if VM is not found' do
17
- @env[:machine].stub(:id).and_return(MISSING_UUID)
18
-
19
- call
20
-
21
- @vm.should_not have_received :Destroy_Task
22
- end
23
-
24
- it 'should create a VM Destroy task if the VM exists' do
25
- @env[:machine].stub(:id).and_return(EXISTING_UUID)
26
-
27
- call
28
-
29
- @vm.should have_received :Destroy_Task
30
- end
1
+ require 'spec_helper'
2
+
3
+ describe VagrantPlugins::VSphere::Action::Destroy do
4
+ before :each do
5
+ @env[:vSphere_connection] = @vim
6
+ end
7
+
8
+ it 'should set the machine id to nil' do
9
+ @env[:machine].stub(:id).and_return(MISSING_UUID)
10
+
11
+ call
12
+
13
+ @env[:machine].should have_received(:id=).with(nil)
14
+ end
15
+
16
+ it 'should not create a Destroy task if VM is not found' do
17
+ @env[:machine].stub(:id).and_return(MISSING_UUID)
18
+
19
+ call
20
+
21
+ @vm.should_not have_received :Destroy_Task
22
+ end
23
+
24
+ it 'should create a VM Destroy task if the VM exists' do
25
+ @env[:machine].stub(:id).and_return(EXISTING_UUID)
26
+
27
+ call
28
+
29
+ @vm.should have_received :Destroy_Task
30
+ end
31
31
  end
@@ -1,31 +1,31 @@
1
- require 'spec_helper'
2
-
3
- describe VagrantPlugins::VSphere::Action::GetSshInfo do
4
- before :each do
5
- @env[:vSphere_connection] = @vim
6
- end
7
-
8
- it 'should set the ssh info to nil if machine ID is not set' do
9
- call
10
-
11
- @env.has_key?(:machine_ssh_info).should be true
12
- @env[:machine_ssh_info].should be nil
13
- end
14
-
15
- it 'should set the ssh info to nil for a VM that does not exist' do
16
- @env[:machine].stub(:id).and_return(MISSING_UUID)
17
-
18
- call
19
-
20
- @env.has_key?(:machine_ssh_info).should be true
21
- @env[:machine_ssh_info].should be nil
22
- end
23
-
24
- it 'should set the ssh info host to the IP an existing VM' do
25
- @env[:machine].stub(:id).and_return(EXISTING_UUID)
26
-
27
- call
28
-
29
- @env[:machine_ssh_info][:host].should be IP_ADDRESS
30
- end
1
+ require 'spec_helper'
2
+
3
+ describe VagrantPlugins::VSphere::Action::GetSshInfo do
4
+ before :each do
5
+ @env[:vSphere_connection] = @vim
6
+ end
7
+
8
+ it 'should set the ssh info to nil if machine ID is not set' do
9
+ call
10
+
11
+ @env.has_key?(:machine_ssh_info).should be true
12
+ @env[:machine_ssh_info].should be nil
13
+ end
14
+
15
+ it 'should set the ssh info to nil for a VM that does not exist' do
16
+ @env[:machine].stub(:id).and_return(MISSING_UUID)
17
+
18
+ call
19
+
20
+ @env.has_key?(:machine_ssh_info).should be true
21
+ @env[:machine_ssh_info].should be nil
22
+ end
23
+
24
+ it 'should set the ssh info host to the IP an existing VM' do
25
+ @env[:machine].stub(:id).and_return(EXISTING_UUID)
26
+
27
+ call
28
+
29
+ @env[:machine_ssh_info][:host].should be IP_ADDRESS
30
+ end
31
31
  end