kitchen-cloudstack 0.20.0 → 0.20.1

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: 8802c8afb4661a3cb83987810521ea0c7199bc6d
4
- data.tar.gz: 2e58b407b35852838f289e359c734f50bc08d7e1
3
+ metadata.gz: 758e5350018113d188414f28183b77a6de93f635
4
+ data.tar.gz: 09226f0d77004c890c7c46a3f5a52807a93348f0
5
5
  SHA512:
6
- metadata.gz: df2b0ea6265d1b658424efcf32277d8d4be1f4d6384f80bed3a339bc51003d3e58e0355266b1dfb009720feea4211ea272a8bf8b1b6ade9cbc339be709abc597
7
- data.tar.gz: 81b6f19798b6b8baa26cc79092cb5892c60387e40a2744f811850f06b174841959fe7b2b9555a9b1f3ee0f530d9c9f3476aab81c91f21fd537458bfab206f1c6
6
+ metadata.gz: d55f09ce5c054f272a3d63038d98c1be2b19257ed9d54b89365b9a5cc50472a3298647162dd51db1c0d01c9052124212e01ef132d47e24e119bb3f62531b3291
7
+ data.tar.gz: 133a064deb67f9114fe0d37bcb56b3859d1ea67a12f4f531d4cac88a8d694456d12f9bc457a4b87d4fb2bca79094b94e1e743f718b0aaac1169dfe2177e684eb
@@ -115,6 +115,7 @@ module Kitchen
115
115
  if server_start['queryasyncjobresultresponse'].fetch('jobstatus').to_i == 2
116
116
  errortext = server_start['queryasyncjobresultresponse'].fetch('jobresult').fetch('errortext')
117
117
  error("ERROR! Job failed with #{errortext}")
118
+ raise ActionFailed, "Could not create server #{errortext}"
118
119
  end
119
120
 
120
121
  # jobstatus of 1 is a succesfully completed async job
@@ -144,9 +145,6 @@ module Kitchen
144
145
  # binding.pry
145
146
  # debug("Keypair is #{keypair}")
146
147
  state[:hostname] = config[:cloudstack_vm_public_ip] || server_info.fetch('nic').first.fetch('ipaddress')
147
- wait_for_sshd(state[:hostname])
148
-
149
- debug("SSH Connectivity Validated.")
150
148
 
151
149
  if (!keypair.nil?)
152
150
  debug("Using keypair: #{keypair}")
@@ -155,16 +153,28 @@ module Kitchen
155
153
  if ssh_key.split[0] == "ssh-rsa" or ssh_key.split[0] == "ssh-dsa"
156
154
  error("SSH key #{keypair} is not a Private Key. Please modify your .kitchen.yml")
157
155
  end
156
+
157
+ wait_for_sshd(state[:hostname], config[:username], {:keys => keypair})
158
+ debug("SSH connectivity validated with keypair.")
159
+
158
160
  ssh = Fog::SSH.new(state[:hostname], config[:username], {:keys => keypair})
159
161
  debug("Connecting to : #{state[:hostname]} as #{config[:username]} using keypair #{keypair}.")
160
162
  elsif (server_info.fetch('passwordenabled') == true)
161
163
  password = server_info.fetch('password')
162
164
  # Print out IP and password so you can record it if you want.
163
165
  info("Password for #{config[:username]} at #{state[:hostname]} is #{password}")
166
+
167
+ wait_for_sshd(state[:hostname], config[:username], {:password => password})
168
+ debug("SSH connectivity validated with cloudstack-set password.")
169
+
164
170
  ssh = Fog::SSH.new(state[:hostname], config[:username], {:password => password})
165
171
  debug("Connecting to : #{state[:hostname]} as #{config[:username]} using password #{password}.")
166
172
  elsif (!config[:password].nil?)
167
173
  info("Connecting with user #{config[:username]} with password #{config[:password]}")
174
+
175
+ wait_for_sshd(state[:hostname], config[:username], {:password => config[:password]})
176
+ debug("SSH connectivity validated with fixed password.")
177
+
168
178
  ssh = Fog::SSH.new(state[:hostname], config[:username], {:password => config[:password]})
169
179
  else
170
180
  info("No keypair specified (or file not found) nor is this a password enabled template. You will have to manually copy your SSH public key to #{state[:hostname]} to use this Kitchen.")
@@ -218,7 +228,7 @@ module Kitchen
218
228
  sleep 15
219
229
  false
220
230
  ensure
221
- sync_time = 45
231
+ sync_time = 0
222
232
  if (config[:cloudstack_sync_time])
223
233
  sync_time = config[:cloudstack_sync_time]
224
234
  end
@@ -21,6 +21,6 @@ module Kitchen
21
21
  module Driver
22
22
 
23
23
  # Version string for Cloudstack Kitchen driver
24
- CLOUDSTACK_VERSION = "0.20.0"
24
+ CLOUDSTACK_VERSION = "0.20.1"
25
25
  end
26
26
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kitchen-cloudstack
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.20.0
4
+ version: 0.20.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeff Moody
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-03-13 00:00:00.000000000 Z
11
+ date: 2015-06-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: test-kitchen
@@ -173,7 +173,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
173
173
  version: '0'
174
174
  requirements: []
175
175
  rubyforge_project:
176
- rubygems_version: 2.4.5
176
+ rubygems_version: 2.4.6
177
177
  signing_key:
178
178
  specification_version: 4
179
179
  summary: Provides an interface for Test Kitchen to be able to run jobs against an