kitchen-verifier-serverspec 0.6.8 → 0.7.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/README.md +6 -0
- data/kitchen-verifier-serverspec.gemspec +2 -8
- data/lib/kitchen/verifier/serverspec.rb +17 -10
- data/lib/kitchen/verifier/serverspec_version.rb +1 -1
- metadata +9 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: ecd072a5661b2d4782d77fbf382f898dae9fb989042ae4c06548be3da49d73a7
|
4
|
+
data.tar.gz: 7ff6f8cf40e1fa127b52d6dbe91fc82d994dc2784bb6f99e0de8f6c0c4c5c6c1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1ab7b8c1f6685e7f99c5c65a9c44464e8eab96d97e77c86c84662c3fa616993fc1872803f777504401b40cb25fe855a3e099d714b419ccf95b184bcbadeeb223
|
7
|
+
data.tar.gz: 4ad6e3fc032c08bf1041e516acbbfa363ea3e491ce64137cc0ede569bd646017fcf53dc1d64584cad84b6ac976af5aad98c6594da44d655f90cc1ea6ddc20c12
|
data/README.md
CHANGED
@@ -82,6 +82,12 @@ There are three ways to run verifier serverspec:
|
|
82
82
|
|
83
83
|
Verifier Serverspec allows the serverspec files to be anywhere in the repository or in the test-kitchen default location i.e /test/integration. This means that you can use spec files that follow ansiblespec or puppet beaker locations.
|
84
84
|
|
85
|
+
### Windows
|
86
|
+
|
87
|
+
A good example of using severspec wit windows can be found at:
|
88
|
+
* https://github.com/josephkumarmichael/centos-serverspec-windows-testbed
|
89
|
+
* Windows spec_helper.rb sample: https://github.com/josephkumarmichael/centos-serverspec-windows-testbed/blob/master/tests/spec/spec_helper.rb fput this in the spec folder. Then specify full path to the spec_helper in the default_spec test.
|
90
|
+
|
85
91
|
### Spec File Location and Updating
|
86
92
|
|
87
93
|
When remote_exec is set to true (the default) the following rules apply for getting the spec files to the remote server instance.
|
@@ -16,14 +16,8 @@ Gem::Specification.new do |s|
|
|
16
16
|
s.platform = Gem::Platform::RUBY
|
17
17
|
s.require_paths = ['lib']
|
18
18
|
s.rubyforge_project = '[none]'
|
19
|
-
s.add_dependency 'test-kitchen', '
|
20
|
-
|
21
|
-
s.add_dependency 'net-ssh', '>= 3'
|
22
|
-
else
|
23
|
-
s.add_dependency 'json', '~> 1.8'
|
24
|
-
s.add_dependency 'net-ssh', '~> 2.9'
|
25
|
-
s.add_dependency 'rubocop', '~> 0.41.2'
|
26
|
-
end
|
19
|
+
s.add_dependency 'test-kitchen', '>= 1.4'
|
20
|
+
s.add_dependency 'net-ssh', '>= 3'
|
27
21
|
s.description = <<-EOF
|
28
22
|
Serverspec verifier for Test-Kitchen without having to transit the Busser layer.
|
29
23
|
EOF
|
@@ -57,7 +57,7 @@ module Kitchen
|
|
57
57
|
debug('Running Serverspec on remote server')
|
58
58
|
if config[:default_pattern]
|
59
59
|
create_sandbox
|
60
|
-
sandbox_dirs =
|
60
|
+
sandbox_dirs = [ sandbox_path ]
|
61
61
|
end
|
62
62
|
instance.transport.connection(state) do |conn|
|
63
63
|
conn.execute(install_command)
|
@@ -139,6 +139,7 @@ module Kitchen
|
|
139
139
|
if [ -f /etc/system-release ] && grep -q 'Amazon Linux' /etc/system-release; then
|
140
140
|
#{sudo_env('yum')} -y install ruby
|
141
141
|
else
|
142
|
+
#{sudo_env('apt-get')} -y update
|
142
143
|
#{sudo_env('apt-get')} -y install ruby
|
143
144
|
fi
|
144
145
|
fi
|
@@ -169,14 +170,20 @@ module Kitchen
|
|
169
170
|
def install_bundler
|
170
171
|
if config[:remote_exec]
|
171
172
|
<<-INSTALL
|
172
|
-
if [
|
173
|
-
echo
|
173
|
+
if [ -f /etc/centos-release ] || [ -f /etc/redhat-release ] || [ -f /etc/oracle-release ]; then
|
174
|
+
echo '-----> Installing os provided bundler package'
|
175
|
+
#{sudo_env('yum')} -y install rubygem-bundler
|
174
176
|
else
|
175
|
-
|
176
|
-
|
177
|
+
echo '-----> Installing bundler via rubygems'
|
178
|
+
if [ \"$(#{sudo('gem')} list bundler -i)\" = \"true\" ]; then
|
179
|
+
echo "Bundler already installed"
|
177
180
|
else
|
178
|
-
|
179
|
-
|
181
|
+
if [ \"$(#{sudo('gem')} list bundler -i)\" = \"false\" ]; then
|
182
|
+
#{sudo_env('gem')} install #{gem_proxy_parm} --no-ri --no-rdoc bundler
|
183
|
+
else
|
184
|
+
echo "ERROR: Ruby not installed correctly"
|
185
|
+
exit 1
|
186
|
+
fi
|
180
187
|
fi
|
181
188
|
fi
|
182
189
|
INSTALL
|
@@ -246,7 +253,7 @@ module Kitchen
|
|
246
253
|
<<-INSTALL
|
247
254
|
#{sudo('rm')} -f #{config[:default_path]}/Gemfile
|
248
255
|
#{sudo('echo')} "source 'https://rubygems.org'" >> #{config[:default_path]}/Gemfile
|
249
|
-
#{sudo('echo')} "gem 'net-ssh','~>
|
256
|
+
#{sudo('echo')} "gem 'net-ssh','~> 3'" >> #{config[:default_path]}/Gemfile
|
250
257
|
#{sudo('echo')} "gem 'serverspec'" >> #{config[:default_path]}/Gemfile
|
251
258
|
INSTALL
|
252
259
|
end
|
@@ -291,7 +298,7 @@ module Kitchen
|
|
291
298
|
elsif config[:remote_exec]
|
292
299
|
config[:patterns].map { |s| "#{env_vars} #{sudo_env('')} $RSPEC_CMD #{color} -f #{config[:format]} --default-path #{config[:default_path]} #{config[:extra_flags]} -P #{s}" }.join(';')
|
293
300
|
else
|
294
|
-
config[:patterns].
|
301
|
+
config[:patterns].empty? ? '' : "#{env_vars} #{sudo_env(rspec_cmd)} #{color} -f #{config[:format]} --default-path #{config[:default_path]} #{config[:extra_flags]} #{config[:patterns].map { |s| "-P #{s}" }.join(' ')}"
|
295
302
|
end
|
296
303
|
end
|
297
304
|
|
@@ -404,7 +411,7 @@ module Kitchen
|
|
404
411
|
info("Environment variable #{'KITCHEN_' + key.to_s.upcase} value #{value}")
|
405
412
|
end
|
406
413
|
# if using a driver that uses transport expose those too
|
407
|
-
%w
|
414
|
+
%w[username password ssh_key port].each do |key|
|
408
415
|
next if instance.transport[key.to_sym].nil?
|
409
416
|
value = instance.transport[key.to_sym].to_s
|
410
417
|
ENV['KITCHEN_' + key.to_s.upcase] = value
|
metadata
CHANGED
@@ -1,27 +1,27 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kitchen-verifier-serverspec
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.7.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Neill Turner
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-07-25 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.4'
|
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.4'
|
27
27
|
- !ruby/object:Gem::Dependency
|
@@ -38,8 +38,10 @@ dependencies:
|
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '3'
|
41
|
-
description:
|
42
|
-
|
41
|
+
description: 'Serverspec verifier for Test-Kitchen without having to transit the Busser
|
42
|
+
layer.
|
43
|
+
|
44
|
+
'
|
43
45
|
email:
|
44
46
|
- neillwturner@gmail.com
|
45
47
|
executables: []
|
@@ -69,8 +71,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
69
71
|
- !ruby/object:Gem::Version
|
70
72
|
version: '0'
|
71
73
|
requirements: []
|
72
|
-
|
73
|
-
rubygems_version: 2.2.2
|
74
|
+
rubygems_version: 3.0.3
|
74
75
|
signing_key:
|
75
76
|
specification_version: 4
|
76
77
|
summary: Serverspec verifier for Test-Kitchen without having to transit the Busser
|