vagrant-vcloud 0.4.6 → 0.4.7

Sign up to get free protection for your applications and to get access to all the features.
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