kitchen-rackspace 0.7.0 → 0.8.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +5 -0
- data/.travis.yml +0 -1
- data/CHANGELOG.md +7 -0
- data/README.md +1 -0
- data/kitchen-rackspace.gemspec +1 -1
- data/lib/kitchen/driver/rackspace.rb +11 -0
- data/lib/kitchen/driver/rackspace_version.rb +1 -1
- data/spec/kitchen/driver/rackspace_spec.rb +6 -1
- metadata +5 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 11a49b0402d17f4783bbf041eb46e947b1fb902c
|
4
|
+
data.tar.gz: ea67a1d6080f34eeee786a2734d9a236b24fdb8a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6b1b47b640bb72f6752eddc927188a6134261c4d5b5a70b6dc0bccbb42220f12edb84c695ed5c2cda2a93b41f6f721ad0b9b923c38a32726e9de7f46df70998e
|
7
|
+
data.tar.gz: 434f78dfe311b93a13f75e2b6e04a3ab295e7cc45e1bb65fae7abb12f20d9c7a75bef65044b8252d2bf4e453fd78bf028864a55966e6fbca57dba24cab3d8afc
|
data/.rubocop.yml
ADDED
data/.travis.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
# 0.8.0 / 2014-08-20
|
2
|
+
|
3
|
+
### New Features
|
4
|
+
|
5
|
+
* PR [#35][] - Add option to wait on RackConnect, via [@martinb3][]
|
6
|
+
|
1
7
|
# 0.7.0 / 2014-07-09
|
2
8
|
|
3
9
|
### New Features
|
@@ -70,6 +76,7 @@ boot times, via [@coderanger][]
|
|
70
76
|
|
71
77
|
* Initial release! Woo!
|
72
78
|
|
79
|
+
[#35]: https://github.com/test-kitchen/kitchen-rackspace/pull/35
|
73
80
|
[#31]: https://github.com/test-kitchen/kitchen-rackspace/pull/31
|
74
81
|
[#29]: https://github.com/test-kitchen/kitchen-rackspace/pull/29
|
75
82
|
[#26]: https://github.com/test-kitchen/kitchen-rackspace/pull/26
|
data/README.md
CHANGED
@@ -49,6 +49,7 @@ for your specified platform. Additional, optional overrides can be provided:
|
|
49
49
|
no_ssh_tcp_check: [DEFAULTS TO false, SKIPS TCP CHECK WHEN true]
|
50
50
|
no_ssh_tcp_check_sleep: [NUM OF SECONDS TO SLEEP IF no_ssh_tcp_check IS SET]
|
51
51
|
networks: [LIST OF RACKSPACE NETWORK UUIDS, DEFAULT PUBLICNET AND SERVICE NET]
|
52
|
+
rackconnect_wait: ['true' IF USING RACKCONNECT TO WAIT FOR IT TO COMPLETE]
|
52
53
|
|
53
54
|
You also have the option of providing some configs via environment variables:
|
54
55
|
|
data/kitchen-rackspace.gemspec
CHANGED
@@ -19,7 +19,7 @@ Gem::Specification.new do |spec|
|
|
19
19
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
20
20
|
spec.require_paths = ['lib']
|
21
21
|
|
22
|
-
spec.required_ruby_version = '>= 1.9.
|
22
|
+
spec.required_ruby_version = '>= 1.9.3'
|
23
23
|
|
24
24
|
spec.add_dependency 'test-kitchen', '~> 1.1'
|
25
25
|
spec.add_dependency 'fog', '~> 1.18'
|
@@ -36,6 +36,7 @@ module Kitchen
|
|
36
36
|
default_config :wait_for, 600
|
37
37
|
default_config :no_ssh_tcp_check, false
|
38
38
|
default_config :no_ssh_tcp_check_sleep, 120
|
39
|
+
default_config :rackconnect_wait, false
|
39
40
|
default_config(:image_id) { |driver| driver.default_image }
|
40
41
|
default_config(:server_name) { |driver| driver.default_name }
|
41
42
|
default_config :networks, nil
|
@@ -73,6 +74,7 @@ module Kitchen
|
|
73
74
|
info("Rackspace instance <#{state[:server_id]}> created.")
|
74
75
|
server.wait_for { ready? }
|
75
76
|
puts '(server ready)'
|
77
|
+
rackconnect_check(server) if config[:rackconnect_wait]
|
76
78
|
state[:hostname] = server.public_ip_address
|
77
79
|
tcp_check(state)
|
78
80
|
rescue Fog::Errors::Error, Excon::Errors::Error => ex
|
@@ -116,6 +118,8 @@ module Kitchen
|
|
116
118
|
[:image_id, :flavor_id, :public_key_path].each do |opt|
|
117
119
|
server_def[opt] = config[opt]
|
118
120
|
end
|
121
|
+
# see @note on bootstrap def about rackconnect
|
122
|
+
server_def[:no_passwd_lock] = true if config[:rackconnect_wait]
|
119
123
|
compute.servers.bootstrap(server_def)
|
120
124
|
end
|
121
125
|
|
@@ -134,6 +138,13 @@ module Kitchen
|
|
134
138
|
puts '(ssh ready)'
|
135
139
|
end
|
136
140
|
|
141
|
+
def rackconnect_check(server)
|
142
|
+
server.wait_for \
|
143
|
+
{ metadata.all['rackconnect_automation_status'] == 'DEPLOYED' }
|
144
|
+
puts '(rackconnect automation complete)'
|
145
|
+
server.update # refresh accessIPv4 with new IP
|
146
|
+
end
|
147
|
+
|
137
148
|
def networks
|
138
149
|
base_nets = %w(
|
139
150
|
00000000-0000-0000-0000-000000000000
|
@@ -108,6 +108,10 @@ describe Kitchen::Driver::Rackspace do
|
|
108
108
|
it 'defaults to the standard Rackspace networks' do
|
109
109
|
expect(driver[:networks]).to eq(default_networks)
|
110
110
|
end
|
111
|
+
|
112
|
+
it 'defaults to not waiting for rackconnect' do
|
113
|
+
expect(driver[:rackconnect_wait]).to eq(false)
|
114
|
+
end
|
111
115
|
end
|
112
116
|
|
113
117
|
platforms = {
|
@@ -137,7 +141,8 @@ describe Kitchen::Driver::Rackspace do
|
|
137
141
|
port: '2222',
|
138
142
|
server_name: 'puppy',
|
139
143
|
rackspace_region: 'ord',
|
140
|
-
wait_for: 1200
|
144
|
+
wait_for: 1200,
|
145
|
+
rackconnect_wait: true
|
141
146
|
}
|
142
147
|
|
143
148
|
let(:config) { config }
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kitchen-rackspace
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jonathan Hartman
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-08-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: test-kitchen
|
@@ -186,6 +186,7 @@ extensions: []
|
|
186
186
|
extra_rdoc_files: []
|
187
187
|
files:
|
188
188
|
- ".gitignore"
|
189
|
+
- ".rubocop.yml"
|
189
190
|
- ".travis.yml"
|
190
191
|
- CHANGELOG.md
|
191
192
|
- Gemfile
|
@@ -210,7 +211,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
210
211
|
requirements:
|
211
212
|
- - ">="
|
212
213
|
- !ruby/object:Gem::Version
|
213
|
-
version: 1.9.
|
214
|
+
version: 1.9.3
|
214
215
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
215
216
|
requirements:
|
216
217
|
- - ">="
|
@@ -218,7 +219,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
218
219
|
version: '0'
|
219
220
|
requirements: []
|
220
221
|
rubyforge_project:
|
221
|
-
rubygems_version: 2.
|
222
|
+
rubygems_version: 2.4.1
|
222
223
|
signing_key:
|
223
224
|
specification_version: 4
|
224
225
|
summary: A Test Kitchen Rackspace driver
|