vagrant-vcloud 0.4.6 → 0.4.7

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b9c4c78e1a1282b1aac96e39cfcea24b36847340
4
- data.tar.gz: afc6fc6fa406254848db0d871b5f014b0d72f193
3
+ metadata.gz: fd8a383b915dc8939efd48bde407f13c3be6d104
4
+ data.tar.gz: f5dd1be500a3399db255258d351e58c7c5d20c30
5
5
  SHA512:
6
- metadata.gz: 6d53ac5b55cd8060e0d73c5168d56ca21793cadcef767bdf0abde2ecd25091eec362a0d6eec4500cbff64e0d16ea77391ba9d5e8759c139a708502b86633bb92
7
- data.tar.gz: 29fb9185c93f55efdcd1bf787dc3c67e898231370477e0fed5969509598305d1c289186f77de60e24dc808dfd8902464ad868bf536a3a0be946cf96567043bed
6
+ metadata.gz: 44f686d7604fff5fb6ba410c0366c55a17464cb23bf30c84f22a697bbe5517e4c3c7e579015ded3cd11622e2b3212c18e5d19a216404031f0c7863d64e69d979
7
+ data.tar.gz: 40fe2aa6f7e68ef8756bf92c960d99e89ff6fee58bb80d8ade0e719afb82febd871fcf95a7abf54d869ccdd13fb4a53d83865f88919cf425412e9cd272b0b1fb
data/README.md CHANGED
@@ -164,5 +164,3 @@ What is still missing:
164
164
  - Error checking is absymal.
165
165
  - Some spaghetti code here and there.
166
166
  - Bugs, bugs and BUGS!.
167
-
168
- If you're a developer and want to lend us a hand, head over to our `develop` branch and send us PRs!
@@ -9,5 +9,3 @@ BOX package should contain:
9
9
  - `<boxname>.mf` -- OVF manifest file containing file hashes.
10
10
  - `<boxname>-disk-<#>.vmdk` -- Associated VMDK files.
11
11
  - `Vagrantfile`-- vagrant-vcloud default Vagrantfile
12
-
13
- A [task is open](https://github.com/frapposelli/vagrant-vcloud/issues/12) for creating a veewee plugin to facilitate Box creation
@@ -0,0 +1,2 @@
1
+ .vagrant/
2
+ !Vagrantfile
@@ -0,0 +1,34 @@
1
+ FROM ubuntu
2
+
3
+ ARG VAGRANT_VERSION=1.9.1
4
+
5
+ ENV \
6
+ BOX_WINDOWS=https://github.com/plossys/vagrant-vcloud/raw/my/helper/dummy-windows.box \
7
+ BOX_LINUX=https://github.com/plossys/vagrant-vcloud/raw/my/helper/dummy-linux.box
8
+
9
+ RUN apt-get update -y && \
10
+ apt-get install -y build-essential liblzma-dev zlib1g-dev git openssh-client rsync curl && \
11
+ ln -sf bash /bin/sh && \
12
+ curl -L https://releases.hashicorp.com/vagrant/${VAGRANT_VERSION}/vagrant_${VAGRANT_VERSION}_x86_64.deb > /tmp/vagrant_x86_64.deb && \
13
+ dpkg -i /tmp/vagrant_x86_64.deb && \
14
+ rm -f /tmp/vagrant_x86_64.deb && \
15
+ apt-get clean && \
16
+ rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* && \
17
+ vagrant plugin list && \
18
+ ln -s /user/Vagrantfile /root/.vagrant.d/Vagrantfile && \
19
+ vagrant box add windows_2016 ${BOX_WINDOWS} && \
20
+ vagrant box add ubuntu1404 ${BOX_LINUX}
21
+
22
+ WORKDIR /plugin
23
+ COPY . /plugin
24
+
25
+ RUN /opt/vagrant/embedded/bin/gem build vagrant-vcloud.gemspec && \
26
+ vagrant --version && \
27
+ vagrant plugin install ./vagrant-vcloud*.gem && \
28
+ vagrant plugin list
29
+
30
+ WORKDIR /work
31
+
32
+ VOLUME ["/work", "/user"]
33
+
34
+ ENTRYPOINT ["vagrant"]
@@ -0,0 +1,34 @@
1
+ # integration
2
+
3
+ Easily run some integration tests with several versions of Vagrant in a Docker container.
4
+
5
+ ## Build vagrant base images
6
+
7
+ To build the vagrant base images just run
8
+
9
+ ```
10
+ ./build-images.sh
11
+ ```
12
+
13
+ This also tests if the plugin is installable in the latest three minor versions of Vagrant.
14
+
15
+ Afterwards you have some Docker images with specific Vagrant versions:
16
+
17
+ ```
18
+ $ docker images | grep vagrant
19
+ vagrant 1.7.4 4bd54f063310 About an hour ago 598.9 MB
20
+ vagrant 1.8.7 9d70aa570e14 About an hour ago 594.1 MB
21
+ vagrant 1.9.1 446c0fad9f55 About an hour ago 609.8 MB
22
+ ```
23
+
24
+ ## Run a test
25
+
26
+ In this folder there is a `Vagrantfile` with two VM's in a vApp. Spinning up that vApp you will test if rsync works and if adding a VM to a vApp works.
27
+
28
+ You can use all commands of Vagrant with that wrapper script `test.sh`. As first argument you have to specify the Docker image name, eg. `vagrant:1.9.1`
29
+
30
+ ```
31
+ ./test.sh vagrant:1.7.4 up
32
+ ```
33
+
34
+ If you change some code you have to rebuild the base images at the moment.
@@ -0,0 +1,33 @@
1
+ # -*- mode: ruby -*-
2
+ # vi: set ft=ruby :
3
+
4
+ $script=<<EOF
5
+ echo "Hello from `hostname`"
6
+ echo "Listing of /vagrant"
7
+ ls -l /vagrant
8
+ EOF
9
+
10
+ Vagrant.configure("2") do |config|
11
+ if Vagrant.has_plugin?("vagrant-vcloud")
12
+ config.vm.provider :vcloud do |vcloud|
13
+ vcloud.vapp_prefix = "integrationtest"
14
+ vcloud.ip_subnet = "172.16.32.0/255.255.255.0"
15
+ end
16
+ config.vm.provider :vcloud do |cloud, override|
17
+ override.vm.usable_port_range = 2200..2999
18
+ end
19
+ end
20
+
21
+ config.vm.define :"tst" do |cfg|
22
+ cfg.vm.box = "ubuntu1404"
23
+ cfg.vm.hostname = "tst"
24
+ cfg.vm.provision "shell", inline: $script
25
+ end
26
+
27
+ config.vm.define :"tst2" do |cfg|
28
+ cfg.vm.box = "ubuntu1404"
29
+ cfg.vm.hostname = "tst2"
30
+ cfg.vm.provision "shell", inline: $script
31
+ end
32
+
33
+ end
@@ -0,0 +1,7 @@
1
+ #!/bin/bash
2
+ MY_PATH="`dirname \"$0\"`" # relative
3
+ MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
4
+ cd $MY_PATH/..
5
+ docker build -t vagrant:1.9.1 --build-arg VAGRANT_VERSION=1.9.1 -f integration/Dockerfile .
6
+ docker build -t vagrant:1.8.7 --build-arg VAGRANT_VERSION=1.8.7 -f integration/Dockerfile .
7
+ docker build -t vagrant:1.7.4 --build-arg VAGRANT_VERSION=1.7.4 -f integration/Dockerfile .
@@ -0,0 +1,20 @@
1
+ #!/bin/bash
2
+
3
+ if [[ $1 == '--help' || $1 == '' ]]; then
4
+ echo "A helper to test plugin sources with several Vagrant versions."
5
+ echo "Usage: $0 <image> <command>"
6
+ echo "Examples:"
7
+ echo "$0 vagrant:1.7.4 up"
8
+ echo "$0 vagrant:1.8.7 up"
9
+ echo "$0 vagrant:1.9.1 up"
10
+ echo "$0 vagrant:1.9.1 destroy -f"
11
+ exit 0
12
+ fi
13
+
14
+ image=$1
15
+ shift
16
+
17
+ docker run --rm -it \
18
+ -v "$(pwd):/work" \
19
+ -v ~/.vagrant.d/Vagrantfile:/user/Vagrantfile \
20
+ "$image" "$@"
@@ -50,7 +50,8 @@ module VagrantPlugins
50
50
  '5.1' => Version_5_1,
51
51
  '5.5' => Version_5_1, # Binding vCloud 5.5 API on our current 5.1 implementation
52
52
  '5.6' => Version_5_1, # Binding vCHS API on our current 5.1 implementation
53
- '5.7' => Version_5_1 # Binding vCHS API on our current 5.1 implementation
53
+ '5.7' => Version_5_1, # Binding vCHS API on our current 5.1 implementation
54
+ '9.0' => Version_5_1 # Binding vCHS API on our current 5.1 implementation
54
55
  }
55
56
 
56
57
  if @version.start_with?('0.9') ||
@@ -1002,8 +1002,7 @@ module VagrantPlugins
1002
1002
  )
1003
1003
 
1004
1004
  vapp_id = URI(headers['Location']).path.gsub('/api/vApp/vapp-', '')
1005
-
1006
- task = response.css("Task [operationName='vdcRecomposeVapp']").first
1005
+ task = response.css("Task[operationName='vdcRecomposeVapp']").first
1007
1006
  task_id = URI(task['href']).path.gsub('/api/task/', '')
1008
1007
 
1009
1008
  { :vapp_id => vapp_id, :task_id => task_id }
@@ -1,5 +1,5 @@
1
1
  module VagrantPlugins
2
2
  module VCloud
3
- VERSION = '0.4.6'
3
+ VERSION = '0.4.7'
4
4
  end
5
5
  end
@@ -12,20 +12,16 @@ Gem::Specification.new do |s|
12
12
  s.summary = 'VMware vCloud Director® provider'
13
13
  s.description = 'Enables Vagrant to manage machines with VMware vCloud Director®.'
14
14
 
15
- s.add_runtime_dependency 'i18n', '~> 0.6.4'
16
- s.add_runtime_dependency 'log4r', '~> 1.1.10'
17
- s.add_runtime_dependency 'nokogiri', '~> 1.6'
18
- s.add_runtime_dependency 'httpclient', '~> 2.3.4.1'
19
- s.add_runtime_dependency 'ruby-progressbar', '~> 1.1.1'
20
- s.add_runtime_dependency 'netaddr', '~> 1.5.0'
15
+ s.add_runtime_dependency 'ruby-progressbar', '~> 1.1'
16
+ s.add_runtime_dependency 'netaddr', '~> 1.5'
21
17
  # Adding awesome_print because it's just awesome to read XML
22
- s.add_runtime_dependency 'awesome_print', '~> 1.2.0'
23
- s.add_runtime_dependency 'terminal-table', '~> 1.4.5'
18
+ s.add_runtime_dependency 'awesome_print', '~> 1.2'
19
+ s.add_runtime_dependency 'terminal-table', '~> 1.4'
24
20
 
25
- s.add_development_dependency 'rake'
26
- s.add_development_dependency 'rspec-core', '~> 2.12.2'
27
- s.add_development_dependency 'rspec-expectations', '~> 2.12.1'
28
- s.add_development_dependency 'rspec-mocks', '~> 2.12.1'
21
+ s.add_development_dependency 'rake', '~> 12.0'
22
+ s.add_development_dependency 'rspec-core', '~> 2.12'
23
+ s.add_development_dependency 'rspec-expectations', '~> 2.12'
24
+ s.add_development_dependency 'rspec-mocks', '~> 2.12'
29
25
 
30
26
  s.files = `git ls-files`.split($/)
31
27
  s.executables = s.files.grep(%r{^bin/}) { |f| File.basename(f) }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vagrant-vcloud
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.6
4
+ version: 0.4.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fabio Rapposelli
@@ -9,176 +9,120 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2016-12-08 00:00:00.000000000 Z
12
+ date: 2017-03-30 00:00:00.000000000 Z
13
13
  dependencies:
14
- - !ruby/object:Gem::Dependency
15
- name: i18n
16
- requirement: !ruby/object:Gem::Requirement
17
- requirements:
18
- - - "~>"
19
- - !ruby/object:Gem::Version
20
- version: 0.6.4
21
- type: :runtime
22
- prerelease: false
23
- version_requirements: !ruby/object:Gem::Requirement
24
- requirements:
25
- - - "~>"
26
- - !ruby/object:Gem::Version
27
- version: 0.6.4
28
- - !ruby/object:Gem::Dependency
29
- name: log4r
30
- requirement: !ruby/object:Gem::Requirement
31
- requirements:
32
- - - "~>"
33
- - !ruby/object:Gem::Version
34
- version: 1.1.10
35
- type: :runtime
36
- prerelease: false
37
- version_requirements: !ruby/object:Gem::Requirement
38
- requirements:
39
- - - "~>"
40
- - !ruby/object:Gem::Version
41
- version: 1.1.10
42
- - !ruby/object:Gem::Dependency
43
- name: nokogiri
44
- requirement: !ruby/object:Gem::Requirement
45
- requirements:
46
- - - "~>"
47
- - !ruby/object:Gem::Version
48
- version: '1.6'
49
- type: :runtime
50
- prerelease: false
51
- version_requirements: !ruby/object:Gem::Requirement
52
- requirements:
53
- - - "~>"
54
- - !ruby/object:Gem::Version
55
- version: '1.6'
56
- - !ruby/object:Gem::Dependency
57
- name: httpclient
58
- requirement: !ruby/object:Gem::Requirement
59
- requirements:
60
- - - "~>"
61
- - !ruby/object:Gem::Version
62
- version: 2.3.4.1
63
- type: :runtime
64
- prerelease: false
65
- version_requirements: !ruby/object:Gem::Requirement
66
- requirements:
67
- - - "~>"
68
- - !ruby/object:Gem::Version
69
- version: 2.3.4.1
70
14
  - !ruby/object:Gem::Dependency
71
15
  name: ruby-progressbar
72
16
  requirement: !ruby/object:Gem::Requirement
73
17
  requirements:
74
18
  - - "~>"
75
19
  - !ruby/object:Gem::Version
76
- version: 1.1.1
20
+ version: '1.1'
77
21
  type: :runtime
78
22
  prerelease: false
79
23
  version_requirements: !ruby/object:Gem::Requirement
80
24
  requirements:
81
25
  - - "~>"
82
26
  - !ruby/object:Gem::Version
83
- version: 1.1.1
27
+ version: '1.1'
84
28
  - !ruby/object:Gem::Dependency
85
29
  name: netaddr
86
30
  requirement: !ruby/object:Gem::Requirement
87
31
  requirements:
88
32
  - - "~>"
89
33
  - !ruby/object:Gem::Version
90
- version: 1.5.0
34
+ version: '1.5'
91
35
  type: :runtime
92
36
  prerelease: false
93
37
  version_requirements: !ruby/object:Gem::Requirement
94
38
  requirements:
95
39
  - - "~>"
96
40
  - !ruby/object:Gem::Version
97
- version: 1.5.0
41
+ version: '1.5'
98
42
  - !ruby/object:Gem::Dependency
99
43
  name: awesome_print
100
44
  requirement: !ruby/object:Gem::Requirement
101
45
  requirements:
102
46
  - - "~>"
103
47
  - !ruby/object:Gem::Version
104
- version: 1.2.0
48
+ version: '1.2'
105
49
  type: :runtime
106
50
  prerelease: false
107
51
  version_requirements: !ruby/object:Gem::Requirement
108
52
  requirements:
109
53
  - - "~>"
110
54
  - !ruby/object:Gem::Version
111
- version: 1.2.0
55
+ version: '1.2'
112
56
  - !ruby/object:Gem::Dependency
113
57
  name: terminal-table
114
58
  requirement: !ruby/object:Gem::Requirement
115
59
  requirements:
116
60
  - - "~>"
117
61
  - !ruby/object:Gem::Version
118
- version: 1.4.5
62
+ version: '1.4'
119
63
  type: :runtime
120
64
  prerelease: false
121
65
  version_requirements: !ruby/object:Gem::Requirement
122
66
  requirements:
123
67
  - - "~>"
124
68
  - !ruby/object:Gem::Version
125
- version: 1.4.5
69
+ version: '1.4'
126
70
  - !ruby/object:Gem::Dependency
127
71
  name: rake
128
72
  requirement: !ruby/object:Gem::Requirement
129
73
  requirements:
130
- - - ">="
74
+ - - "~>"
131
75
  - !ruby/object:Gem::Version
132
- version: '0'
76
+ version: '12.0'
133
77
  type: :development
134
78
  prerelease: false
135
79
  version_requirements: !ruby/object:Gem::Requirement
136
80
  requirements:
137
- - - ">="
81
+ - - "~>"
138
82
  - !ruby/object:Gem::Version
139
- version: '0'
83
+ version: '12.0'
140
84
  - !ruby/object:Gem::Dependency
141
85
  name: rspec-core
142
86
  requirement: !ruby/object:Gem::Requirement
143
87
  requirements:
144
88
  - - "~>"
145
89
  - !ruby/object:Gem::Version
146
- version: 2.12.2
90
+ version: '2.12'
147
91
  type: :development
148
92
  prerelease: false
149
93
  version_requirements: !ruby/object:Gem::Requirement
150
94
  requirements:
151
95
  - - "~>"
152
96
  - !ruby/object:Gem::Version
153
- version: 2.12.2
97
+ version: '2.12'
154
98
  - !ruby/object:Gem::Dependency
155
99
  name: rspec-expectations
156
100
  requirement: !ruby/object:Gem::Requirement
157
101
  requirements:
158
102
  - - "~>"
159
103
  - !ruby/object:Gem::Version
160
- version: 2.12.1
104
+ version: '2.12'
161
105
  type: :development
162
106
  prerelease: false
163
107
  version_requirements: !ruby/object:Gem::Requirement
164
108
  requirements:
165
109
  - - "~>"
166
110
  - !ruby/object:Gem::Version
167
- version: 2.12.1
111
+ version: '2.12'
168
112
  - !ruby/object:Gem::Dependency
169
113
  name: rspec-mocks
170
114
  requirement: !ruby/object:Gem::Requirement
171
115
  requirements:
172
116
  - - "~>"
173
117
  - !ruby/object:Gem::Version
174
- version: 2.12.1
118
+ version: '2.12'
175
119
  type: :development
176
120
  prerelease: false
177
121
  version_requirements: !ruby/object:Gem::Requirement
178
122
  requirements:
179
123
  - - "~>"
180
124
  - !ruby/object:Gem::Version
181
- version: 2.12.1
125
+ version: '2.12'
182
126
  description: Enables Vagrant to manage machines with VMware vCloud Director®.
183
127
  email:
184
128
  - fabio@rapposelli.org
@@ -196,6 +140,12 @@ files:
196
140
  - example_box/README.md
197
141
  - example_box/Vagrantfile
198
142
  - example_box/metadata.json
143
+ - integration/.gitignore
144
+ - integration/Dockerfile
145
+ - integration/README.md
146
+ - integration/Vagrantfile
147
+ - integration/build-images.sh
148
+ - integration/test.sh
199
149
  - lib/vagrant-vcloud.rb
200
150
  - lib/vagrant-vcloud/action.rb
201
151
  - lib/vagrant-vcloud/action/announce_ssh_exec.rb
@@ -264,7 +214,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
264
214
  version: '0'
265
215
  requirements: []
266
216
  rubyforge_project:
267
- rubygems_version: 2.5.2
217
+ rubygems_version: 2.4.5.1
268
218
  signing_key:
269
219
  specification_version: 4
270
220
  summary: VMware vCloud Director® provider