kitchen-verifier-serverspec 0.6.8 → 0.7.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 +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
|