kitchen-opennebula 0.1.2 → 0.2.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +13 -1
- data/lib/kitchen/driver/opennebula.rb +19 -18
- data/lib/kitchen/driver/opennebula_version.rb +1 -1
- metadata +23 -22
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 5dea4bf5542ab00226332f544663f1615a7592d3
|
|
4
|
+
data.tar.gz: ce2459bde699197ac5f16cba5939c1d05f8c68e8
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e1d44b88eec480dd34de142506fdb3b21afe217ea322bcdf5725a91b657a1033c96e7e20695691d1f9bf19976973331ca33e2721132da1eee22ccff243546f54
|
|
7
|
+
data.tar.gz: 449ccd4981a98adf07f985f132a74d647f745a9876a9e2e067e596b5b51c09f82da1d9ee8a08c587d940ae5128fbcb77a4c55db9cf28a43325ff3b59130fce6e
|
data/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
|
-
## 0.1
|
|
1
|
+
## 0.2.1
|
|
2
|
+
|
|
3
|
+
* Do not use methods from Kitchen::SSHBase as we are no longer inherit them. Rely on instance.transport instead.
|
|
4
|
+
|
|
5
|
+
## 0.2.0
|
|
6
|
+
|
|
7
|
+
* Switch SSH api to use gateway-enabled wrapper, instead of raw Kitchen::SSH, which does not support ssh gateways.
|
|
8
|
+
|
|
9
|
+
## 0.1.2
|
|
10
|
+
|
|
11
|
+
* Adds an authentication check for OpenNebula, and uses a later version of fog which supports multiple NICs in a VM template.
|
|
12
|
+
|
|
13
|
+
## 0.1.0
|
|
2
14
|
|
|
3
15
|
* Initial release
|
|
@@ -26,7 +26,7 @@ module Kitchen
|
|
|
26
26
|
# Opennebula driver for Kitchen.
|
|
27
27
|
#
|
|
28
28
|
# @author Andrew J. Brown <anbrown@blackberry.com>
|
|
29
|
-
class Opennebula < Kitchen::Driver::
|
|
29
|
+
class Opennebula < Kitchen::Driver::Base
|
|
30
30
|
default_config :opennebula_endpoint,
|
|
31
31
|
ENV.fetch('ONE_XMLRPC', 'http://127.0.0.1:2633/RPC2')
|
|
32
32
|
|
|
@@ -127,32 +127,33 @@ module Kitchen
|
|
|
127
127
|
end
|
|
128
128
|
|
|
129
129
|
def tcp_check(state)
|
|
130
|
-
|
|
130
|
+
instance.transport.connection(state).wait_until_ready unless config[:no_ssh_tcp_check]
|
|
131
131
|
sleep(config[:no_ssh_tcp_check_sleep]) if config[:no_ssh_tcp_check]
|
|
132
132
|
debug("SSH ready on #{instance.to_str}")
|
|
133
133
|
end
|
|
134
134
|
|
|
135
135
|
def passwordless_sudo_check(state)
|
|
136
|
-
|
|
137
|
-
|
|
136
|
+
if config[:no_passwordless_sudo_check]
|
|
137
|
+
sleep(config[:no_passwordless_sudo_sleep])
|
|
138
|
+
else
|
|
139
|
+
wait_for_passwordless_sudo(state)
|
|
140
|
+
end
|
|
138
141
|
debug("Passwordless sudo ready on #{instance.to_str}")
|
|
139
142
|
end
|
|
140
143
|
|
|
141
144
|
def wait_for_passwordless_sudo(state)
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
raise ActionFailed, e.message
|
|
155
|
-
end
|
|
145
|
+
retries = config[:passwordless_sudo_timeout] || 300
|
|
146
|
+
retry_interval = config[:passwordless_sudo_retry_interval] || 10
|
|
147
|
+
begin
|
|
148
|
+
instance.transport.connection(state) do |conn|
|
|
149
|
+
conn.execute('sudo -n true')
|
|
150
|
+
end
|
|
151
|
+
rescue Kitchen::Transport::SshFailed => e
|
|
152
|
+
if (e.message.eql? "SSH exited (1) for command: [sudo -n true]") && (retries >= 0)
|
|
153
|
+
sleep retry_interval
|
|
154
|
+
retry
|
|
155
|
+
end
|
|
156
|
+
raise ActionFailed, e.message
|
|
156
157
|
end
|
|
157
158
|
end
|
|
158
159
|
|
metadata
CHANGED
|
@@ -1,125 +1,125 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: kitchen-opennebula
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1
|
|
4
|
+
version: 0.2.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Andrew J. Brown
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2016-08-22 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: test-kitchen
|
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
|
16
16
|
requirements:
|
|
17
|
-
- - ~>
|
|
17
|
+
- - "~>"
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
19
|
version: '1.2'
|
|
20
20
|
type: :runtime
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
|
-
- - ~>
|
|
24
|
+
- - "~>"
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
26
|
version: '1.2'
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
28
|
name: fog
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
30
30
|
requirements:
|
|
31
|
-
- - ~>
|
|
31
|
+
- - "~>"
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
33
|
version: '1.30'
|
|
34
34
|
type: :runtime
|
|
35
35
|
prerelease: false
|
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
37
|
requirements:
|
|
38
|
-
- - ~>
|
|
38
|
+
- - "~>"
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
40
|
version: '1.30'
|
|
41
41
|
- !ruby/object:Gem::Dependency
|
|
42
42
|
name: opennebula
|
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
|
44
44
|
requirements:
|
|
45
|
-
- -
|
|
45
|
+
- - ">="
|
|
46
46
|
- !ruby/object:Gem::Version
|
|
47
47
|
version: '0'
|
|
48
48
|
type: :runtime
|
|
49
49
|
prerelease: false
|
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
51
|
requirements:
|
|
52
|
-
- -
|
|
52
|
+
- - ">="
|
|
53
53
|
- !ruby/object:Gem::Version
|
|
54
54
|
version: '0'
|
|
55
55
|
- !ruby/object:Gem::Dependency
|
|
56
56
|
name: bundler
|
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
|
58
58
|
requirements:
|
|
59
|
-
- - ~>
|
|
59
|
+
- - "~>"
|
|
60
60
|
- !ruby/object:Gem::Version
|
|
61
61
|
version: '1.3'
|
|
62
62
|
type: :development
|
|
63
63
|
prerelease: false
|
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
|
65
65
|
requirements:
|
|
66
|
-
- - ~>
|
|
66
|
+
- - "~>"
|
|
67
67
|
- !ruby/object:Gem::Version
|
|
68
68
|
version: '1.3'
|
|
69
69
|
- !ruby/object:Gem::Dependency
|
|
70
70
|
name: rake
|
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
|
72
72
|
requirements:
|
|
73
|
-
- -
|
|
73
|
+
- - ">="
|
|
74
74
|
- !ruby/object:Gem::Version
|
|
75
75
|
version: '0'
|
|
76
76
|
type: :development
|
|
77
77
|
prerelease: false
|
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
|
79
79
|
requirements:
|
|
80
|
-
- -
|
|
80
|
+
- - ">="
|
|
81
81
|
- !ruby/object:Gem::Version
|
|
82
82
|
version: '0'
|
|
83
83
|
- !ruby/object:Gem::Dependency
|
|
84
84
|
name: cane
|
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
|
86
86
|
requirements:
|
|
87
|
-
- -
|
|
87
|
+
- - ">="
|
|
88
88
|
- !ruby/object:Gem::Version
|
|
89
89
|
version: '0'
|
|
90
90
|
type: :development
|
|
91
91
|
prerelease: false
|
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
|
93
93
|
requirements:
|
|
94
|
-
- -
|
|
94
|
+
- - ">="
|
|
95
95
|
- !ruby/object:Gem::Version
|
|
96
96
|
version: '0'
|
|
97
97
|
- !ruby/object:Gem::Dependency
|
|
98
98
|
name: tailor
|
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
|
100
100
|
requirements:
|
|
101
|
-
- -
|
|
101
|
+
- - ">="
|
|
102
102
|
- !ruby/object:Gem::Version
|
|
103
103
|
version: '0'
|
|
104
104
|
type: :development
|
|
105
105
|
prerelease: false
|
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
|
107
107
|
requirements:
|
|
108
|
-
- -
|
|
108
|
+
- - ">="
|
|
109
109
|
- !ruby/object:Gem::Version
|
|
110
110
|
version: '0'
|
|
111
111
|
- !ruby/object:Gem::Dependency
|
|
112
112
|
name: countloc
|
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
|
114
114
|
requirements:
|
|
115
|
-
- -
|
|
115
|
+
- - ">="
|
|
116
116
|
- !ruby/object:Gem::Version
|
|
117
117
|
version: '0'
|
|
118
118
|
type: :development
|
|
119
119
|
prerelease: false
|
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
|
121
121
|
requirements:
|
|
122
|
-
- -
|
|
122
|
+
- - ">="
|
|
123
123
|
- !ruby/object:Gem::Version
|
|
124
124
|
version: '0'
|
|
125
125
|
description: A Test Kitchen Driver for Opennebula
|
|
@@ -129,7 +129,7 @@ executables: []
|
|
|
129
129
|
extensions: []
|
|
130
130
|
extra_rdoc_files: []
|
|
131
131
|
files:
|
|
132
|
-
- .gitignore
|
|
132
|
+
- ".gitignore"
|
|
133
133
|
- CHANGELOG.md
|
|
134
134
|
- Gemfile
|
|
135
135
|
- LICENSE
|
|
@@ -148,18 +148,19 @@ require_paths:
|
|
|
148
148
|
- lib
|
|
149
149
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
150
150
|
requirements:
|
|
151
|
-
- -
|
|
151
|
+
- - ">="
|
|
152
152
|
- !ruby/object:Gem::Version
|
|
153
153
|
version: '0'
|
|
154
154
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
155
155
|
requirements:
|
|
156
|
-
- -
|
|
156
|
+
- - ">="
|
|
157
157
|
- !ruby/object:Gem::Version
|
|
158
158
|
version: '0'
|
|
159
159
|
requirements: []
|
|
160
160
|
rubyforge_project:
|
|
161
|
-
rubygems_version: 2.
|
|
161
|
+
rubygems_version: 2.5.2
|
|
162
162
|
signing_key:
|
|
163
163
|
specification_version: 4
|
|
164
164
|
summary: A Test Kitchen Driver for Opennebula
|
|
165
165
|
test_files: []
|
|
166
|
+
has_rdoc:
|