simp-beaker-helpers 1.23.2 → 1.24.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cfd8d6cfc126259b0d2062a8c63765eb67e1645a46d8fd5bdc4605455d4e10bb
4
- data.tar.gz: 006e29f01522f454f0ccc84caa3f9ae22405f6034bfaf074080ceb1bec6a9008
3
+ metadata.gz: bf9271df59bd88be59e1555cd5536c0906f7d09dcb2d1096df801302b1ebbd0d
4
+ data.tar.gz: 967fb58eb7e5561c35b32899beb972d4b0f70a423239d05e5e12aad20b207658
5
5
  SHA512:
6
- metadata.gz: c094cfa4b6d883bbf83a463a646d2a03b9b543f7fcccca64d9afe72d35a9f7c22112500071f96a150eead084f1ffc0dda7a6cd3be78f2da7ddcf04dc1565ccab
7
- data.tar.gz: d22878a97daf38ed771e4d2a023ef4edcdf69edaaee8e0ce9d282cd944010f78e27a90ae5dffdf524a98ccf2a359e8356c6bbfbaa81c99e33cfc0b7b740a7222
6
+ metadata.gz: 9dfd8dcd9bb759cd995aad0f33f072064537dccd5d96cd9b19e5193b069a8c62b5df860802c8a99f0478bbb596fa882cbd8f482d1d581ff9c72218049c3051f2
7
+ data.tar.gz: bd0af0b10d2b743c2f8995821d00c64c4d3bf9d387ebefd3c6af81e4bb738b88ded50671214baf7c74e174fa5e4eb8f884722c5d34c4a06f831e4d79fd098b10
@@ -63,7 +63,7 @@ jobs:
63
63
  # we restrict ourselves to sending data elsewhere.
64
64
  glci-syntax:
65
65
  name: '.gitlab-ci.yml Syntax'
66
- runs-on: ubuntu-16.04
66
+ runs-on: ubuntu-latest
67
67
  outputs:
68
68
  valid: ${{ steps.validate-glci-file.outputs.valid }}
69
69
  steps:
@@ -174,7 +174,7 @@ jobs:
174
174
  ### examine_contexts:
175
175
  ### name: 'Examine Context contents'
176
176
  ### if: always()
177
- ### runs-on: ubuntu-16.04
177
+ ### runs-on: ubuntu-latest
178
178
  ### needs: [ glci-syntax, contributor-permissions ]
179
179
  ### steps:
180
180
  ### - name: Dump contexts
@@ -93,7 +93,7 @@ jobs:
93
93
  ### examine_contexts:
94
94
  ### name: 'Examine Context contents'
95
95
  ### if: always()
96
- ### runs-on: ubuntu-16.04
96
+ ### runs-on: ubuntu-latest
97
97
  ### steps:
98
98
  ### - name: Dump contexts
99
99
  ### env:
@@ -1,4 +1,4 @@
1
- # Build & Deploy RubyGem & GitHub release when a SemVer tag is pushed
1
+ # When SemVer tag is pushed: create GitHub release & publish gem to rubygems.org
2
2
  #
3
3
  # This workflow's jobs are only triggered in repos under the `simp` organization
4
4
  # ------------------------------------------------------------------------------
data/.gitlab-ci.yml CHANGED
@@ -273,10 +273,6 @@ variables:
273
273
  # Unit Tests
274
274
  #-----------------------------------------------------------------------
275
275
 
276
- pup5.x-unit:
277
- <<: *pup_5_x
278
- <<: *unit_tests
279
-
280
276
  pup6.x-unit:
281
277
  <<: *pup_6_x
282
278
  <<: *unit_tests
@@ -292,12 +288,6 @@ pup7.x-unit:
292
288
  #=======================================================================
293
289
  # Packaging test
294
290
 
295
- pup5.x-pkg:
296
- <<: *pup_5_x
297
- <<: *unit_tests
298
- script:
299
- 'bundle exec rake pkg:gem'
300
-
301
291
  pup6.x-pkg:
302
292
  <<: *pup_6_x
303
293
  <<: *unit_tests
@@ -360,6 +350,12 @@ puppet7_collections:
360
350
  script:
361
351
  - bundle exec rake beaker:suites[puppet_collections]
362
352
 
353
+ oel_ssg:
354
+ <<: *pup_6_x
355
+ <<: *acceptance_base
356
+ script:
357
+ - bundle exec rake beaker:suites[ssg,oel]
358
+
363
359
  windows:
364
360
  <<: *pup_6_x
365
361
  <<: *acceptance_base
data/CHANGELOG.md CHANGED
@@ -1,3 +1,32 @@
1
+ ### 1.24.1 / 2021-10-27
2
+ * Fixed:
3
+ * Worked around a bug in 'puppet lookup' - PUP-11402
4
+ * Updated calls to the operating system fact when connecting to RHSM
5
+
6
+ ### 1.24.0 / 2021-10-05
7
+ * Fixed:
8
+ * Pinned the version of inspec to 4.39.0 since 4.41 broke tag processing
9
+ * Only call `activate_interfaces` once per test run instead of at each context
10
+ which saves quite a bit of time during testing
11
+ * SSG tag selection logic
12
+ * Use `sed -ci` which works with docker volume mounts
13
+ * Added:
14
+ * Modified the `activate_interfaces` method to use the `networking` fact if
15
+ available which shaves quite a bit of time off of each test run
16
+
17
+ ### 1.23.4 / 2021-07-07
18
+ * Fixed:
19
+ * Ensure that the openscap-scanner package is installed during SSG runs
20
+ * Added:
21
+ * A function to fetch the available SSG profiles on a target system
22
+ * Changed:
23
+ * Added OEL nodeset
24
+
25
+ ### 1.23.3 / 2021-06-30
26
+ * Fixed:
27
+ * Removed the Streams kernel update for EL 8.3 since it now causes issues
28
+ * Use `pfact_on` to select the interface facts to fix Puppet 7 issues
29
+
1
30
  ### 1.23.2 / 2021-05-29
2
31
  * Fixed:
3
32
  * Fail an acceptance test when an explicitly-specified nodeset for an
data/Gemfile CHANGED
@@ -45,7 +45,7 @@ group :system_tests do
45
45
  gem 'beaker-windows'
46
46
  gem 'net-ssh'
47
47
  gem 'puppet', ENV.fetch('PUPPET_VERSION', '~> 6.0')
48
- gem 'puppetlabs_spec_helper'
48
+ gem 'puppetlabs_spec_helper', '~> 3.0'
49
49
  gem 'rubocop'
50
50
  gem 'rubocop-rspec'
51
51
  end
data/files/pki/make.sh CHANGED
@@ -73,7 +73,7 @@ for hosts in $*; do
73
73
  done
74
74
  done
75
75
 
76
- sed -i "s/# subjectAltName = #ALTNAMES#/subjectAltName = ${altnames}/" "working/${hname}.cnf"
76
+ sed -ci "s/# subjectAltName = #ALTNAMES#/subjectAltName = ${altnames}/" "working/${hname}.cnf"
77
77
  fi
78
78
 
79
79
  echo "-- running openssl req"
@@ -34,7 +34,9 @@ module Simp::BeakerHelpers
34
34
  # The name of the profile against which to run
35
35
  #
36
36
  def initialize(sut, profile)
37
- @inspec_version = ENV['BEAKER_inspec_version'] || 'latest'
37
+ # The 4.41 release is currently broken
38
+ # @inspec_version = ENV['BEAKER_inspec_version'] || 'latest'
39
+ @inspec_version = ENV['BEAKER_inspec_version'] || '4.39.0'
38
40
 
39
41
  @sut = sut
40
42
 
@@ -19,10 +19,11 @@ module Simp::BeakerHelpers
19
19
  GIT_BRANCH = ENV['BEAKER_ssg_branch']
20
20
  end
21
21
 
22
- EL_PACKAGES = [
22
+ EL7_PACKAGES = [
23
23
  'PyYAML',
24
24
  'cmake',
25
25
  'git',
26
+ 'openscap-scanner',
26
27
  'openscap-python',
27
28
  'openscap-utils',
28
29
  'python-jinja2',
@@ -35,16 +36,18 @@ module Simp::BeakerHelpers
35
36
  'make',
36
37
  'openscap-python3',
37
38
  'openscap-utils',
39
+ 'openscap-scanner',
38
40
  'python3',
39
41
  'python3-jinja2',
40
42
  'python3-lxml',
41
- 'python3-pyyaml'
43
+ 'python3-pyyaml',
44
+ 'libarchive'
42
45
  ]
43
46
 
44
47
  OS_INFO = {
45
48
  'RedHat' => {
46
49
  '6' => {
47
- 'required_packages' => EL_PACKAGES,
50
+ 'required_packages' => EL7_PACKAGES,
48
51
  'ssg' => {
49
52
  'profile_target' => 'rhel6',
50
53
  'build_target' => 'rhel6',
@@ -52,7 +55,7 @@ module Simp::BeakerHelpers
52
55
  }
53
56
  },
54
57
  '7' => {
55
- 'required_packages' => EL_PACKAGES,
58
+ 'required_packages' => EL7_PACKAGES,
56
59
  'ssg' => {
57
60
  'profile_target' => 'rhel7',
58
61
  'build_target' => 'rhel7',
@@ -70,7 +73,7 @@ module Simp::BeakerHelpers
70
73
  },
71
74
  'CentOS' => {
72
75
  '6' => {
73
- 'required_packages' => EL_PACKAGES,
76
+ 'required_packages' => EL7_PACKAGES,
74
77
  'ssg' => {
75
78
  'profile_target' => 'rhel6',
76
79
  'build_target' => 'centos6',
@@ -78,7 +81,7 @@ module Simp::BeakerHelpers
78
81
  }
79
82
  },
80
83
  '7' => {
81
- 'required_packages' => EL_PACKAGES,
84
+ 'required_packages' => EL7_PACKAGES,
82
85
  'ssg' => {
83
86
  'profile_target' => 'centos7',
84
87
  'build_target' => 'centos7',
@@ -94,14 +97,25 @@ module Simp::BeakerHelpers
94
97
  }
95
98
  }
96
99
  },
100
+ 'Rocky' => {
101
+ '8' => {
102
+ 'required_packages' => EL8_PACKAGES,
103
+ 'ssg' => {
104
+ 'profile_target' => 'centos8',
105
+ 'build_target' => 'centos8',
106
+ 'datastream' => 'ssg-centos8-ds.xml'
107
+ }
108
+ }
109
+ },
97
110
  'OracleLinux' => {
98
111
  '7' => {
99
- 'required_packages' => EL_PACKAGES,
112
+ 'required_packages' => EL7_PACKAGES,
100
113
  'ssg' => {
101
114
  'profile_target' => 'ol7',
102
115
  'build_target' => 'ol7',
103
116
  'datastream' => 'ssg-ol7-ds.xml'
104
117
  },
118
+ },
105
119
  '8' => {
106
120
  'required_packages' => EL8_PACKAGES,
107
121
  'ssg' => {
@@ -110,7 +124,6 @@ module Simp::BeakerHelpers
110
124
  'datastream' => 'ssg-ol8-ds.xml'
111
125
  }
112
126
  }
113
- }
114
127
  }
115
128
  }
116
129
 
@@ -124,8 +137,8 @@ module Simp::BeakerHelpers
124
137
  def initialize(sut)
125
138
  @sut = sut
126
139
 
127
- @os = fact_on(@sut, 'operatingsystem')
128
- @os_rel = fact_on(@sut, 'operatingsystemmajrelease')
140
+ @os = pfact_on(@sut, 'os.name')
141
+ @os_rel = pfact_on(@sut, 'os.release.major')
129
142
 
130
143
  sut.mkdir_p('scap_working_dir')
131
144
 
@@ -136,7 +149,7 @@ module Simp::BeakerHelpers
136
149
  end
137
150
 
138
151
  OS_INFO[@os][@os_rel]['required_packages'].each do |pkg|
139
- @sut.install_package(pkg)
152
+ install_latest_package_on(@sut, pkg)
140
153
  end
141
154
 
142
155
  @output_dir = File.absolute_path('sec_results/ssg')
@@ -147,7 +160,6 @@ module Simp::BeakerHelpers
147
160
 
148
161
  @result_file = "#{@sut.hostname}-ssg-#{Time.now.to_i}"
149
162
 
150
-
151
163
  get_ssg_datastream
152
164
  end
153
165
 
@@ -155,6 +167,15 @@ module Simp::BeakerHelpers
155
167
  OS_INFO[@os][@os_rel]['ssg']['profile_target']
156
168
  end
157
169
 
170
+ def get_profiles
171
+ cmd = "cd #{@scap_working_dir}; oscap info --profiles"
172
+ on(@sut, "#{cmd} #{OS_INFO[@os][@os_rel]['ssg']['datastream']}")
173
+ .stdout
174
+ .strip
175
+ .lines
176
+ .map{|x| x.split(':').first}
177
+ end
178
+
158
179
  def remediate(profile)
159
180
  evaluate(profile, true)
160
181
  end
@@ -166,7 +187,7 @@ module Simp::BeakerHelpers
166
187
  cmd += ' --remediate'
167
188
  end
168
189
 
169
- cmd += %( --fetch-remote-resources --profile #{profile} --results #{@result_file}.xml --report #{@result_file}.html #{OS_INFO[@os][@os_rel]['ssg']['datastream']})
190
+ cmd += %( --profile #{profile} --results #{@result_file}.xml --report #{@result_file}.html #{OS_INFO[@os][@os_rel]['ssg']['datastream']})
170
191
 
171
192
  # We accept all exit codes here because there have occasionally been
172
193
  # failures in the SSG content and we're not testing that.
@@ -386,7 +407,7 @@ module Simp::BeakerHelpers
386
407
  else
387
408
  tags = on(@sut, %(cd scap-content; git tag -l)).output
388
409
  target_tag = tags.lines.map(&:strip)
389
- .select{|x| x.start_with?(/v\d+\./)}
410
+ .select{|x| x.match?(/^v(\d+\.)+\d+$/)}
390
411
  .sort.last
391
412
 
392
413
  on(@sut, %(cd scap-content; git checkout #{target_tag}))
@@ -398,7 +419,7 @@ module Simp::BeakerHelpers
398
419
  #
399
420
  # This isn't 100% correct but it's "good enough" for an automated CI
400
421
  # environment to tell us if something is critically out of alignment.
401
- on(@sut, %(cd scap-content/build-scripts; sed -i 's/ssg.build_derivatives.profile_handling/#ssg.build_derivatives.profile_handling/g' enable_derivatives.py))
422
+ on(@sut, %(cd scap-content/build-scripts; sed -ci 's/ssg.build_derivatives.profile_handling/#ssg.build_derivatives.profile_handling/g' enable_derivatives.py))
402
423
 
403
424
  on(@sut, %(cd scap-content/build; cmake ../; make -j4 #{OS_INFO[@os][@os_rel]['ssg']['build_target']}-content && cp *ds.xml #{@scap_working_dir}))
404
425
  end
@@ -1,5 +1,5 @@
1
1
  module Simp; end
2
2
 
3
3
  module Simp::BeakerHelpers
4
- VERSION = '1.23.2'
4
+ VERSION = '1.24.1'
5
5
  end
@@ -248,7 +248,7 @@ module Simp::BeakerHelpers
248
248
  rescue StandardError
249
249
  # If *anything* fails, we need to fall back to `puppet facts`
250
250
 
251
- facts_json = on(sut, 'puppet facts find garbage_xxx', :silent => true).stdout
251
+ facts_json = retry_on(sut, 'puppet facts find garbage_xxx', :silent => true, :max_retries => 4).stdout
252
252
  facts = JSON.parse(facts_json)['values']
253
253
  end
254
254
 
@@ -483,7 +483,7 @@ module Simp::BeakerHelpers
483
483
  # that doesn't break vagrant access and is appropriate for
484
484
  # typical module tests.)
485
485
  fips_ssh_ciphers = [ 'aes256-ctr','aes192-ctr','aes128-ctr']
486
- on(sut, %(sed -i '/Ciphers /d' /etc/ssh/sshd_config))
486
+ on(sut, %(sed -ci '/Ciphers /d' /etc/ssh/sshd_config))
487
487
  on(sut, %(echo 'Ciphers #{fips_ssh_ciphers.join(',')}' >> /etc/ssh/sshd_config))
488
488
 
489
489
  fips_enable_modulepath = ''
@@ -688,7 +688,7 @@ module Simp::BeakerHelpers
688
688
  if current_domain.empty?
689
689
  new_fqdn = hostname + '.beaker.test'
690
690
 
691
- on(sut, "sed -i 's/#{hostname}.*/#{new_fqdn} #{hostname}/' /etc/hosts")
691
+ on(sut, "sed -ci 's/#{hostname}.*/#{new_fqdn} #{hostname}/' /etc/hosts")
692
692
  on(sut, "echo '#{new_fqdn}' > /etc/hostname", :accept_all_exit_codes => true)
693
693
  on(sut, "hostname #{new_fqdn}", :accept_all_exit_codes => true)
694
694
 
@@ -771,15 +771,6 @@ module Simp::BeakerHelpers
771
771
  apply_manifest_on(sut, pp, :catch_failures => false)
772
772
  end
773
773
 
774
- unless sut[:hypervisor] == 'docker'
775
- if (os_info['name'] == 'CentOS') && (os_info['release']['major'].to_i >= 8)
776
- if os_info['release']['minor'].to_i == 3
777
- update_package_from_centos_stream(sut, 'kernel')
778
- sut.reboot
779
- end
780
- end
781
- end
782
-
783
774
  # Clean up YUM prior to starting our test runs.
784
775
  on(sut, 'yum clean all')
785
776
  end
@@ -819,8 +810,8 @@ module Simp::BeakerHelpers
819
810
  rhsm_opts.merge!(opts)
820
811
  end
821
812
 
822
- os = fact_on(sut, 'operatingsystem').strip
823
- os_release = fact_on(sut, 'operatingsystemmajrelease').strip
813
+ os = fact_on(sut, 'os.name').strip
814
+ os_release = fact_on(sut, 'os.release.major').strip
824
815
 
825
816
  if os == 'RedHat'
826
817
  unless rhsm_opts[:username] && rhsm_opts[:password]
@@ -962,21 +953,31 @@ module Simp::BeakerHelpers
962
953
  host_entry[fqdn] << host.name if (host[:hypervisor] == 'docker')
963
954
 
964
955
  # Ensure that all interfaces are active prior to collecting data
965
- activate_interfaces(host) unless ENV['BEAKER_no_fix_interfaces']
956
+ activate_interfaces(host)
966
957
 
967
- # Gather the IP Addresses for the host to embed in the cert
968
- interfaces = fact_on(host, 'interfaces').strip.split(',')
969
- interfaces.each do |interface|
970
- ipaddress = fact_on(host, "ipaddress_#{interface}")
958
+ networking_fact = pfact_on(host, 'networking')
959
+ if networking_fact && networking_fact['interfaces']
960
+ networking_fact['interfaces'].each do |iface, data|
961
+ next unless data['ip']
962
+ next if data['ip'].start_with?('127.')
971
963
 
972
- next if ipaddress.nil? || ipaddress.empty? || ipaddress.start_with?('127.')
964
+ host_entry[fqdn] << data['ip'].strip
965
+ end
966
+ else
967
+ # Gather the IP Addresses for the host to embed in the cert
968
+ interfaces = fact_on(host, 'interfaces').strip.split(',')
969
+ interfaces.each do |interface|
970
+ ipaddress = fact_on(host, "ipaddress_#{interface}")
973
971
 
974
- host_entry[fqdn] << ipaddress.strip
972
+ next if ipaddress.nil? || ipaddress.empty? || ipaddress.start_with?('127.')
975
973
 
976
- unless host_entry[fqdn].empty?
977
- suts_network_info[fqdn] = host_entry[fqdn].sort.uniq
974
+ host_entry[fqdn] << ipaddress.strip
978
975
  end
979
976
  end
977
+
978
+ unless host_entry[fqdn].empty?
979
+ suts_network_info[fqdn] = host_entry[fqdn].sort.uniq
980
+ end
980
981
  end
981
982
 
982
983
  # Get all of the repeated SUT IP addresses:
@@ -1081,7 +1082,6 @@ module Simp::BeakerHelpers
1081
1082
  on ca_sut, "chgrp -R puppet #{host_keydist_dir}"
1082
1083
  end
1083
1084
 
1084
-
1085
1085
  # Activate all network interfaces on the target system
1086
1086
  #
1087
1087
  # This is generally needed if the upstream vendor does not activate all
@@ -1089,6 +1089,8 @@ module Simp::BeakerHelpers
1089
1089
  #
1090
1090
  # Can be passed any number of hosts either singly or as an Array
1091
1091
  def activate_interfaces(hosts)
1092
+ return if ENV['BEAKER_no_fix_interfaces']
1093
+
1092
1094
  parallel = (ENV['BEAKER_SIMP_parallel'] == 'yes')
1093
1095
  block_on(hosts, :run_in_parallel => parallel) do |host|
1094
1096
  if host[:platform] =~ /windows/
@@ -1096,14 +1098,22 @@ module Simp::BeakerHelpers
1096
1098
  next
1097
1099
  end
1098
1100
 
1099
- interfaces_fact = retry_on(host,'facter interfaces', verbose: true).stdout
1101
+ networking_fact = pfact_on(host, 'networking')
1102
+ if networking_fact && networking_fact['interfaces']
1103
+ networking_fact['interfaces'].each do |iface, data|
1104
+ next if ( ( data['ip'] && !data['ip'].empty? ) || ( data['ip6'] && !data['ip6'].empty? ) )
1105
+ on(host, "ifup #{iface}", :accept_all_exit_codes => true)
1106
+ end
1107
+ else
1108
+ interfaces_fact = pfact_on(host, 'interfaces')
1100
1109
 
1101
- interfaces = interfaces_fact.strip.split(',')
1102
- interfaces.delete_if { |x| x =~ /^lo/ }
1110
+ interfaces = interfaces_fact.strip.split(',')
1111
+ interfaces.delete_if { |x| x =~ /^lo/ }
1103
1112
 
1104
- interfaces.each do |iface|
1105
- if fact_on(host, "ipaddress_#{iface}").strip.empty?
1106
- on(host, "ifup #{iface}", :accept_all_exit_codes => true)
1113
+ interfaces.each do |iface|
1114
+ if pfact_on(host, "ipaddress_#{iface}")
1115
+ on(host, "ifup #{iface}", :accept_all_exit_codes => true)
1116
+ end
1107
1117
  end
1108
1118
  end
1109
1119
  end
@@ -1120,12 +1130,9 @@ module Simp::BeakerHelpers
1120
1130
  RSpec.configure do |c|
1121
1131
  c.before(:all) do
1122
1132
  @temp_hieradata_dirs = @temp_hieradata_dirs || []
1123
- end
1124
1133
 
1125
- # We can't guarantee that the upstream vendor isn't disabling interfaces so
1126
- # we need to turn them on at each context run
1127
- c.before(:context) do
1128
- activate_interfaces(hosts) unless ENV['BEAKER_no_fix_interfaces']
1134
+ # We can't guarantee that the upstream vendor isn't disabling interfaces
1135
+ activate_interfaces(hosts)
1129
1136
  end
1130
1137
 
1131
1138
  c.after(:all) do
@@ -1237,8 +1244,11 @@ module Simp::BeakerHelpers
1237
1244
  #
1238
1245
  # @returns [String] Path to the Hieradata directory on the target system
1239
1246
  def hiera_datadir(sut)
1247
+ # A workaround for PUP-11042
1248
+ sut_environment = sut.puppet_configprint['environment']
1249
+
1240
1250
  # This output lets us know where Hiera is configured to look on the system
1241
- puppet_lookup_info = on(sut, 'puppet lookup --explain test__simp__test', :silent => true).output.strip.lines
1251
+ puppet_lookup_info = on(sut, "puppet lookup --explain --environment #{sut_environment} test__simp__test", :silent => true).output.strip.lines
1242
1252
 
1243
1253
  if sut.puppet_configprint['manifest'].nil? || sut.puppet_configprint['manifest'].empty?
1244
1254
  fail("No output returned from `puppet config print manifest` on #{sut}")
@@ -18,7 +18,7 @@ HOSTS:
18
18
  roles:
19
19
  - el8
20
20
  platform: el-8-x86_64
21
- box: centos/8
21
+ box: generic/centos8
22
22
  hypervisor: <%= hypervisor %>
23
23
 
24
24
  el8-0:
@@ -32,7 +32,8 @@ HOSTS:
32
32
  CONFIG:
33
33
  log_level: verbose
34
34
  type: aio
35
- vagrant_memsize: 256
35
+ vagrant_memsize: 512
36
+ vagrant_cpus: 2
36
37
  <% if ENV['BEAKER_PUPPET_COLLECTION'] -%>
37
38
  puppet_collection: <%= ENV['BEAKER_PUPPET_COLLECTION'] %>
38
39
  <% end -%>
@@ -0,0 +1,42 @@
1
+ <%
2
+ if ENV['BEAKER_HYPERVISOR']
3
+ hypervisor = ENV['BEAKER_HYPERVISOR']
4
+ else
5
+ hypervisor = 'vagrant'
6
+ end
7
+ -%>
8
+ HOSTS:
9
+ oel7:
10
+ roles:
11
+ - el7
12
+ - master
13
+ platform: el-7-x86_64
14
+ box: generic/oracle7
15
+ hypervisor: <%= hypervisor %>
16
+
17
+ oel8:
18
+ roles:
19
+ - el8
20
+ platform: el-8-x86_64
21
+ box: generic/oracle8
22
+ hypervisor: <%= hypervisor %>
23
+
24
+ CONFIG:
25
+ log_level: verbose
26
+ type: aio
27
+ vagrant_memsize: 1024
28
+ vagrant_cpus: 2
29
+ <% if ENV['BEAKER_PUPPET_COLLECTION'] -%>
30
+ puppet_collection: <%= ENV['BEAKER_PUPPET_COLLECTION'] %>
31
+ <% end -%>
32
+ ssh:
33
+ keepalive: true
34
+ keepalive_interval: 10
35
+ host_key:
36
+ - <%= Net::SSH::Transport::Algorithms::ALGORITHMS[:host_key].join("\n#{' '*6}- ") %>
37
+ kex:
38
+ - <%= Net::SSH::Transport::Algorithms::ALGORITHMS[:kex].join("\n#{' '*6}- ") %>
39
+ encryption:
40
+ - <%= Net::SSH::Transport::Algorithms::ALGORITHMS[:encryption].join("\n#{' '*6}- ") %>
41
+ hmac:
42
+ - <%= Net::SSH::Transport::Algorithms::ALGORITHMS[:hmac].join("\n#{' '*6}- ") %>
@@ -14,7 +14,7 @@ HOSTS:
14
14
  CONFIG:
15
15
  log_level: verbose
16
16
  type: aio
17
- vagrant_memsize: 256
17
+ vagrant_memsize: 512
18
18
  <% if ENV['BEAKER_PUPPET_COLLECTION'] -%>
19
19
  puppet_collection: <%= ENV['BEAKER_PUPPET_COLLECTION'] %>
20
20
  <% end -%>
@@ -1,8 +1,8 @@
1
1
  require 'spec_helper_acceptance'
2
2
 
3
- test_name 'SSG STIG Validation'
3
+ test_name 'SSG Functionality Validation'
4
4
 
5
- describe 'run the SSG against the STIG profile' do
5
+ describe 'run the SSG against an SCAP profile' do
6
6
 
7
7
  hosts.each do |host|
8
8
  context "on #{host}" do
@@ -14,8 +14,15 @@ describe 'run the SSG against the STIG profile' do
14
14
  end
15
15
 
16
16
  it 'should run the SSG' do
17
- profile = 'xccdf_org.ssgproject.content_profile_stig'
17
+ profiles = @ssg.get_profiles
18
18
 
19
+ profile = profiles.find{|x| x =~ /_stig/} ||
20
+ profiles.find{|x| x =~ /_cui/} ||
21
+ profiles.find{|x| x =~ /_ospp/} ||
22
+ profiles.find{|x| x =~ /_standard/} ||
23
+ profiles.last
24
+
25
+ expect(profile).not_to be_nil
19
26
  @ssg.evaluate(profile)
20
27
  end
21
28
 
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.23.2
4
+ version: 1.24.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: 2021-06-02 00:00:00.000000000 Z
12
+ date: 2022-01-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: beaker
@@ -221,6 +221,7 @@ files:
221
221
  - simp-beaker-helpers.gemspec
222
222
  - spec/acceptance/nodesets/default.yml
223
223
  - spec/acceptance/nodesets/docker.yml
224
+ - spec/acceptance/nodesets/oel.yml
224
225
  - spec/acceptance/nodesets/ubuntu.yml
225
226
  - spec/acceptance/suites/default/check_puppet_version_spec.rb
226
227
  - spec/acceptance/suites/default/enable_fips_spec.rb