simp-beaker-helpers 1.13.0 → 1.13.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 +6 -0
- data/lib/simp/beaker_helpers.rb +30 -3
- data/lib/simp/beaker_helpers/inspec.rb +8 -1
- data/lib/simp/beaker_helpers/ssg.rb +9 -0
- data/lib/simp/beaker_helpers/version.rb +1 -1
- data/simp-beaker-helpers.gemspec +0 -5
- metadata +2 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8bd7cad880ca341adea6a150fffbf724759599f673a2164022e4b77d1fabec0e
|
4
|
+
data.tar.gz: d9dd6b4e5712556733a735bb0ad6e66c2e200075f14fd567f044facdc15f392c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a50c5176e579f344d13fb86dcfeeb9c5e2b3bc59a69f4277824f3b8bec92baa38e52ed1085c1cc621b03e1d7087d7cdca05ae4665f466e0a8cb93719e345ad39
|
7
|
+
data.tar.gz: 85fc20afb96e3d4b157ed479d8d808e3bd7050de38018bb38ef0dd72a93c8ce66a78652da7f76b6cbe519b6a16c233d40304a71fb0434aa2cc80a940046b67c8
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
### 1.13.1 / 2019-02-02
|
2
|
+
* Ensure that SUTs have an FQDN set and not just a short hostname
|
3
|
+
* Work around issue where the SSG doesn't build the STIG for CentOS any longer.
|
4
|
+
* Add a work around for getting the docker SUT ID due to breaking changes in
|
5
|
+
the beaker-docker gem
|
6
|
+
|
1
7
|
### 1.13.0 / 2018-11-09
|
2
8
|
* Make the SSG reporting consistent with the InSpec reporting
|
3
9
|
* Thanks to Liz Nemsick for the original result processing code
|
data/lib/simp/beaker_helpers.rb
CHANGED
@@ -49,7 +49,13 @@ module Simp::BeakerHelpers
|
|
49
49
|
end
|
50
50
|
end
|
51
51
|
|
52
|
-
|
52
|
+
# Work around for breaking changes in beaker-docker
|
53
|
+
if sut.host_hash[:docker_container]
|
54
|
+
container_id = sut.host_hash[:docker_container].id
|
55
|
+
else
|
56
|
+
container_id = sut.host_hash[:docker_container_id]
|
57
|
+
end
|
58
|
+
%x(tar #{exclude_list.join(' ')} -hcf - -C "#{File.dirname(src)}" "#{File.basename(src)}" | docker exec -i "#{container_id}" tar -C "#{dest}" -xf -)
|
53
59
|
elsif @has_rsync && sut.check_for_command('rsync')
|
54
60
|
# This makes rsync_to work like beaker and scp usually do
|
55
61
|
exclude_hack = %(__-__' -L --exclude '__-__)
|
@@ -376,7 +382,28 @@ module Simp::BeakerHelpers
|
|
376
382
|
# We need to be able to flip between server and client without issue
|
377
383
|
on sut, 'puppet resource group puppet gid=52'
|
378
384
|
on sut, 'puppet resource user puppet comment="Puppet" gid="52" uid="52" home="/var/lib/puppet" managehome=true'
|
379
|
-
|
385
|
+
|
386
|
+
# Make sure we have a domain on our host
|
387
|
+
current_domain = fact_on(sut, 'domain').strip
|
388
|
+
hostname = fact_on(sut, 'hostname').strip
|
389
|
+
|
390
|
+
if current_domain.empty?
|
391
|
+
new_fqdn = hostname + '.beaker.test'
|
392
|
+
|
393
|
+
on(sut, "sed -i 's/#{hostname}.*/#{new_fqdn} #{hostname}/' /etc/hosts")
|
394
|
+
on(sut, "echo '#{new_fqdn}' > /etc/hostname", :accept_all_exit_codes => true)
|
395
|
+
on(sut, "hostname #{new_fqdn}", :accept_all_exit_codes => true)
|
396
|
+
|
397
|
+
if sut.file_exist?('/etc/sysconfig/network')
|
398
|
+
on(sut, "sed -s '/HOSTNAME=/d' /etc/sysconfig/network")
|
399
|
+
on(sut, "echo 'HOSTNAME=#{new_fqdn}' >> /etc/sysconfig/network")
|
400
|
+
end
|
401
|
+
end
|
402
|
+
|
403
|
+
if fact_on(sut, 'domain').strip.empty?
|
404
|
+
fail("Error: hosts must have an FQDN, got domain='#{current_domain}'")
|
405
|
+
end
|
406
|
+
|
380
407
|
# This may not exist in docker so just skip the whole thing
|
381
408
|
if sut.file_exist?('/etc/ssh')
|
382
409
|
# SIMP uses a central ssh key location so we prep that spot in case we
|
@@ -409,7 +436,7 @@ module Simp::BeakerHelpers
|
|
409
436
|
on(sut, %{if [ -f "#{src_file}" ]; then cp -a -f "#{src_file}" "#{tgt_file}" && chmod 644 "#{tgt_file}"; fi}, :silent => true)
|
410
437
|
end
|
411
438
|
end
|
412
|
-
|
439
|
+
|
413
440
|
# SIMP uses structured facts, therefore stringify_facts must be disabled
|
414
441
|
unless ENV['BEAKER_stringify_facts'] == 'yes'
|
415
442
|
on sut, 'puppet config set stringify_facts false'
|
@@ -64,7 +64,14 @@ module Simp::BeakerHelpers
|
|
64
64
|
begin
|
65
65
|
Dir.chdir(tmpdir) do
|
66
66
|
if @sut[:hypervisor] == 'docker'
|
67
|
-
|
67
|
+
# Work around for breaking changes in beaker-docker
|
68
|
+
if @sut.host_hash[:docker_container]
|
69
|
+
container_id = @sut.host_hash[:docker_container].id
|
70
|
+
else
|
71
|
+
container_id = @sut.host_hash[:docker_container_id]
|
72
|
+
end
|
73
|
+
|
74
|
+
%x(docker cp "#{container_id}:#{sut_inspec_results}" .)
|
68
75
|
else
|
69
76
|
scp_from(@sut, sut_inspec_results, '.')
|
70
77
|
end
|
@@ -277,6 +277,15 @@ module Simp::BeakerHelpers
|
|
277
277
|
else
|
278
278
|
on(@sut, %(cd scap-content; git checkout $(git describe --abbrev=0 --tags)))
|
279
279
|
end
|
280
|
+
|
281
|
+
# Work around the issue where the profiles now strip out derivative
|
282
|
+
# content that isn't explicitlly approved for that OS. This means that
|
283
|
+
# we are unable to test CentOS builds against the STIG, etc...
|
284
|
+
#
|
285
|
+
# This isn't 100% correct but it's "good enough" for an automated CI
|
286
|
+
# environment to tell us if something is critically out of alignment.
|
287
|
+
on(@sut, %(cd scap-content/build-scripts; sed -i 's/ssg.build_derivatives.profile_handling/#ssg.build_derivatives.profile_handling/g' enable_derivatives.py))
|
288
|
+
|
280
289
|
on(@sut, %(cd scap-content/build; cmake ../; make -j4 #{OS_INFO[@os][@os_rel]['ssg']['build_target']}-content && cp *ds.xml #{@scap_working_dir}))
|
281
290
|
end
|
282
291
|
end
|
data/simp-beaker-helpers.gemspec
CHANGED
@@ -31,11 +31,6 @@ Gem::Specification.new do |s|
|
|
31
31
|
# TODO: Update this when we no longer support Ruby 2.1.9 (should be October 2018)
|
32
32
|
s.add_runtime_dependency 'net-telnet', '~> 0.1.1'
|
33
33
|
|
34
|
-
# Because net-telnet dropped support for Ruby < 2.2.0
|
35
|
-
# TODO: Update this when we no longer support Ruby 2.1.9 (should be October 2018)
|
36
|
-
s.add_runtime_dependency 'rubocop', '~> 0.57.2'
|
37
|
-
|
38
|
-
|
39
34
|
### s.files = Dir['Rakefile', '{bin,lib,spec}/**/*', 'README*', 'LICENSE*'] & `git ls-files -z .`.split("\0")
|
40
35
|
s.files = `git ls-files`.split("\n")
|
41
36
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: simp-beaker-helpers
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.13.
|
4
|
+
version: 1.13.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Tessmer
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2019-02-18 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: beaker
|
@@ -137,20 +137,6 @@ dependencies:
|
|
137
137
|
- - "~>"
|
138
138
|
- !ruby/object:Gem::Version
|
139
139
|
version: 0.1.1
|
140
|
-
- !ruby/object:Gem::Dependency
|
141
|
-
name: rubocop
|
142
|
-
requirement: !ruby/object:Gem::Requirement
|
143
|
-
requirements:
|
144
|
-
- - "~>"
|
145
|
-
- !ruby/object:Gem::Version
|
146
|
-
version: 0.57.2
|
147
|
-
type: :runtime
|
148
|
-
prerelease: false
|
149
|
-
version_requirements: !ruby/object:Gem::Requirement
|
150
|
-
requirements:
|
151
|
-
- - "~>"
|
152
|
-
- !ruby/object:Gem::Version
|
153
|
-
version: 0.57.2
|
154
140
|
description: " Beaker helper methods to help scaffold SIMP acceptance tests\n"
|
155
141
|
email: simp@simp-project.org
|
156
142
|
executables: []
|