simp-beaker-helpers 1.19.3 → 1.19.4
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/.gitignore +1 -0
- data/.gitlab-ci.yml +29 -19
- data/CHANGELOG.md +9 -0
- data/Rakefile +1 -1
- data/lib/simp/beaker_helpers.rb +22 -3
- data/lib/simp/beaker_helpers/version.rb +1 -1
- data/spec/acceptance/suites/default/fixture_modules_spec.rb +8 -0
- data/spec/acceptance/suites/default/nodesets +1 -0
- data/spec/acceptance/suites/fips_from_fixtures/nodesets +1 -0
- data/spec/acceptance/suites/snapshot/nodesets +1 -0
- data/spec/lib/simp/beaker_helpers_spec.rb +15 -2
- metadata +8 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0a44635bd8cc4cc1a091769b42837b03e7711e280ce4e81a261614ff95ca0241
|
4
|
+
data.tar.gz: afbf39be4623d4abb203efcf4215d931cba9366ee1252658918d382d5e6191fd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e2e6e7bf750cb1b75240583efa6ae766981fe82be3fcfa59e498198285c97901569fd4a17857328497b54c55fbc098504883b1be9b5239db2809ba8a3c80ed90
|
7
|
+
data.tar.gz: 20ad194cabcf61d8489efb238ff5d9590c76c3d6e2ea850431d2a51b7295720bf75a8deb48b752c942e0fe0ca8322e5591cf5b2718d69c6a88d923165661c65c
|
data/.gitignore
CHANGED
data/.gitlab-ci.yml
CHANGED
@@ -97,28 +97,25 @@ variables:
|
|
97
97
|
changes:
|
98
98
|
- .gitlab-ci.yml
|
99
99
|
- .fixtures.yml
|
100
|
+
- .rspec
|
101
|
+
- metadata.json
|
100
102
|
- "spec/spec_helper.rb"
|
101
|
-
- "spec/{classes,unit,defines,type_aliases,types,hosts}/**/*.rb"
|
102
|
-
- "{manifests,files,types}/**/*"
|
103
|
-
- "templates
|
104
|
-
- "lib/**/*"
|
103
|
+
- "spec/{classes,unit,defines,type_aliases,types,hosts,lib}/**/*.rb"
|
104
|
+
- "{SIMP,data,manifests,files,types,lib}/**/*"
|
105
|
+
- "templates/**/*.{erb,epp}"
|
105
106
|
- "Gemfile"
|
106
|
-
- "SIMP/**/*"
|
107
|
-
- "data/**/*"
|
108
107
|
exists:
|
109
|
-
- "spec/{classes,unit,defines,type_aliases,types,hosts}/**/*_spec.rb"
|
108
|
+
- "spec/{classes,unit,defines,type_aliases,types,hosts,lib}/**/*_spec.rb"
|
110
109
|
|
111
110
|
.relevant_file_conditions_trigger_acceptance_tests: &relevant_file_conditions_trigger_acceptance_tests
|
112
111
|
changes:
|
113
112
|
- .gitlab-ci.yml
|
113
|
+
- .fixtures.yml
|
114
114
|
- "spec/spec_helper_acceptance.rb"
|
115
115
|
- "spec/acceptance/**/*"
|
116
|
-
- "{manifests,files,types}/**/*"
|
117
|
-
- "templates
|
118
|
-
- "lib/**/*"
|
116
|
+
- "{SIMP,data,manifests,files,types,lib}/**/*"
|
117
|
+
- "templates/**/*.{erb,epp}"
|
119
118
|
- "Gemfile"
|
120
|
-
- "SIMP/**/*"
|
121
|
-
- "data/**/*"
|
122
119
|
exists:
|
123
120
|
- "spec/acceptance/**/*_spec.rb"
|
124
121
|
|
@@ -286,21 +283,14 @@ variables:
|
|
286
283
|
pup5-unit:
|
287
284
|
<<: *pup_5
|
288
285
|
<<: *unit_tests
|
289
|
-
<<: *with_SIMP_SPEC_MATRIX_LEVEL_2
|
290
286
|
|
291
287
|
pup6-unit:
|
292
288
|
<<: *pup_6
|
293
289
|
<<: *unit_tests
|
294
|
-
<<: *with_SIMP_SPEC_MATRIX_LEVEL_2
|
295
|
-
|
296
|
-
pup6.18.0-unit:
|
297
|
-
<<: *pup_6_18_0
|
298
|
-
<<: *unit_tests
|
299
290
|
|
300
291
|
pup7-unit:
|
301
292
|
<<: *pup_7
|
302
293
|
<<: *unit_tests
|
303
|
-
<<: *with_SIMP_SPEC_MATRIX_LEVEL_2
|
304
294
|
|
305
295
|
# ------------------------------------------------------------------------------
|
306
296
|
# NOTICE: **This file is maintained with puppetsync**
|
@@ -312,6 +302,26 @@ pup7-unit:
|
|
312
302
|
# Repo-specific content
|
313
303
|
# ==============================================================================
|
314
304
|
|
305
|
+
#=======================================================================
|
306
|
+
# Packaging test
|
307
|
+
|
308
|
+
pup5-pkg:
|
309
|
+
<<: *pup_5
|
310
|
+
<<: *unit_tests
|
311
|
+
script:
|
312
|
+
'bundle exec rake pkg:gem'
|
313
|
+
|
314
|
+
pup6-pkg:
|
315
|
+
<<: *pup_6
|
316
|
+
<<: *unit_tests
|
317
|
+
script:
|
318
|
+
'bundle exec rake pkg:gem'
|
319
|
+
|
320
|
+
pup7-pkg:
|
321
|
+
<<: *pup_7
|
322
|
+
<<: *unit_tests
|
323
|
+
script:
|
324
|
+
'bundle exec rake pkg:gem'
|
315
325
|
|
316
326
|
#=======================================================================
|
317
327
|
# Acceptance tests
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,12 @@
|
|
1
|
+
### 1.19.4 / 2021-01-05
|
2
|
+
* Fixed:
|
3
|
+
* Only return a default empty string when `pfact_on` finds a `nil` value
|
4
|
+
* Added an acceptance test to validate this
|
5
|
+
* Ensure that we start with `facter -p` for `facter` < 4.0 and continue to
|
6
|
+
`puppet facts` otherwise
|
7
|
+
* Updated the Rakefile to skip symlinks in chmods which fixes the ability to
|
8
|
+
build gems
|
9
|
+
|
1
10
|
### 1.19.3 / 2021-01-01
|
2
11
|
* Fixed:
|
3
12
|
* Ensure that `pfact_on` can handle fact dot notation
|
data/Rakefile
CHANGED
@@ -30,7 +30,7 @@ task :chmod do
|
|
30
30
|
gemspec = File.expand_path( "#{@package}.gemspec", @rakefile_dir ).strip
|
31
31
|
spec = Gem::Specification::load( gemspec )
|
32
32
|
spec.files.each do |file|
|
33
|
-
FileUtils.chmod 'go=r', file
|
33
|
+
FileUtils.chmod 'go=r', file unless File.symlink?(file)
|
34
34
|
end
|
35
35
|
end
|
36
36
|
|
data/lib/simp/beaker_helpers.rb
CHANGED
@@ -118,12 +118,31 @@ module Simp::BeakerHelpers
|
|
118
118
|
def pfact_on(sut, fact_name)
|
119
119
|
require 'ostruct'
|
120
120
|
|
121
|
+
# If puppet is not installed, there are no puppet facts to fetch
|
121
122
|
if sut.which('puppet').empty?
|
122
123
|
fact_on(sut, fact_name, :silent => true)
|
123
124
|
else
|
124
|
-
facts_json =
|
125
|
-
|
126
|
-
|
125
|
+
facts_json = nil
|
126
|
+
begin
|
127
|
+
cmd_output = on(sut, 'facter -p --json', :silent => true)
|
128
|
+
|
129
|
+
# Facter 4+
|
130
|
+
raise('skip facter -p') if (cmd_output.stderr =~ /no longer supported/)
|
131
|
+
|
132
|
+
facts = JSON.parse(cmd_output.stdout, object_class: OpenStruct)
|
133
|
+
rescue StandardError
|
134
|
+
# If *anything* fails, we need to fall back to `puppet facts`
|
135
|
+
|
136
|
+
facts_json = on(sut, 'puppet facts find garbage_xxx', :silent => true).stdout
|
137
|
+
facts = JSON.parse(facts_json, object_class: OpenStruct).values
|
138
|
+
end
|
139
|
+
|
140
|
+
found_fact = facts.dig(*(fact_name.split('.')))
|
141
|
+
|
142
|
+
# Fall back to the behavior in fact_on
|
143
|
+
found_fact = '' if found_fact.nil?
|
144
|
+
|
145
|
+
return found_fact
|
127
146
|
end
|
128
147
|
end
|
129
148
|
|
@@ -29,4 +29,12 @@ context 'after copy_fixture_modules_to( hosts )' do
|
|
29
29
|
expect(pfact_on(master, 'os.release.foo')).to eq ''
|
30
30
|
end
|
31
31
|
end
|
32
|
+
|
33
|
+
describe "pfact_on(master,'fips_enabled')" do
|
34
|
+
expected = (ENV['BEAKER_fips'] == 'yes')
|
35
|
+
|
36
|
+
it 'should return false' do
|
37
|
+
expect(pfact_on(master, 'fips_enabled')).to eq expected
|
38
|
+
end
|
39
|
+
end
|
32
40
|
end
|
@@ -0,0 +1 @@
|
|
1
|
+
../../nodesets
|
@@ -0,0 +1 @@
|
|
1
|
+
../../nodesets
|
@@ -0,0 +1 @@
|
|
1
|
+
../../nodesets
|
@@ -103,8 +103,21 @@ describe 'Simp::BeakerHelpers' do
|
|
103
103
|
end
|
104
104
|
|
105
105
|
it 'uses defaults when no environment variables are set' do
|
106
|
-
|
107
|
-
|
106
|
+
|
107
|
+
# Prevent namespace pollution
|
108
|
+
pipe_out,pipe_in = IO.pipe
|
109
|
+
fork do
|
110
|
+
pipe_out.close
|
111
|
+
require 'puppet'
|
112
|
+
pipe_in.write(Puppet.version)
|
113
|
+
end
|
114
|
+
pipe_in.close
|
115
|
+
|
116
|
+
expected_version = pipe_out.gets
|
117
|
+
expected_major_version = expected_version.split('.').first
|
118
|
+
|
119
|
+
expect( @helper.get_puppet_install_info[:puppet_install_version] ).to match(expected_version)
|
120
|
+
expect( @helper.get_puppet_install_info[:puppet_collection] ).to eq("puppet#{expected_major_version}")
|
108
121
|
expect( @helper.get_puppet_install_info[:puppet_install_type] ).to eq('agent')
|
109
122
|
end
|
110
123
|
|
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.19.
|
4
|
+
version: 1.19.4
|
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-01-
|
12
|
+
date: 2021-01-05 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: beaker
|
@@ -192,11 +192,13 @@ files:
|
|
192
192
|
- spec/acceptance/suites/default/enable_fips_spec.rb
|
193
193
|
- spec/acceptance/suites/default/fixture_modules_spec.rb
|
194
194
|
- spec/acceptance/suites/default/install_simp_deps_repo_spec.rb
|
195
|
+
- spec/acceptance/suites/default/nodesets
|
195
196
|
- spec/acceptance/suites/default/pki_tests_spec.rb
|
196
197
|
- spec/acceptance/suites/default/set_hieradata_on_spec.rb
|
197
198
|
- spec/acceptance/suites/default/write_hieradata_to_spec.rb
|
198
199
|
- spec/acceptance/suites/fips_from_fixtures/00_default_spec.rb
|
199
200
|
- spec/acceptance/suites/fips_from_fixtures/metadata.yml
|
201
|
+
- spec/acceptance/suites/fips_from_fixtures/nodesets
|
200
202
|
- spec/acceptance/suites/offline/00_default_spec.rb
|
201
203
|
- spec/acceptance/suites/offline/README
|
202
204
|
- spec/acceptance/suites/offline/nodesets/default.yml
|
@@ -204,6 +206,7 @@ files:
|
|
204
206
|
- spec/acceptance/suites/puppet_collections/metadata.yml
|
205
207
|
- spec/acceptance/suites/snapshot/00_snapshot_test_spec.rb
|
206
208
|
- spec/acceptance/suites/snapshot/10_general_usage_spec.rb
|
209
|
+
- spec/acceptance/suites/snapshot/nodesets
|
207
210
|
- spec/acceptance/suites/windows/00_default_spec.rb
|
208
211
|
- spec/acceptance/suites/windows/metadata.yml
|
209
212
|
- spec/acceptance/suites/windows/nodesets/default.yml
|
@@ -242,11 +245,13 @@ test_files:
|
|
242
245
|
- spec/acceptance/suites/default/enable_fips_spec.rb
|
243
246
|
- spec/acceptance/suites/default/fixture_modules_spec.rb
|
244
247
|
- spec/acceptance/suites/default/install_simp_deps_repo_spec.rb
|
248
|
+
- spec/acceptance/suites/default/nodesets
|
245
249
|
- spec/acceptance/suites/default/pki_tests_spec.rb
|
246
250
|
- spec/acceptance/suites/default/set_hieradata_on_spec.rb
|
247
251
|
- spec/acceptance/suites/default/write_hieradata_to_spec.rb
|
248
252
|
- spec/acceptance/suites/fips_from_fixtures/00_default_spec.rb
|
249
253
|
- spec/acceptance/suites/fips_from_fixtures/metadata.yml
|
254
|
+
- spec/acceptance/suites/fips_from_fixtures/nodesets
|
250
255
|
- spec/acceptance/suites/offline/00_default_spec.rb
|
251
256
|
- spec/acceptance/suites/offline/README
|
252
257
|
- spec/acceptance/suites/offline/nodesets/default.yml
|
@@ -254,6 +259,7 @@ test_files:
|
|
254
259
|
- spec/acceptance/suites/puppet_collections/metadata.yml
|
255
260
|
- spec/acceptance/suites/snapshot/00_snapshot_test_spec.rb
|
256
261
|
- spec/acceptance/suites/snapshot/10_general_usage_spec.rb
|
262
|
+
- spec/acceptance/suites/snapshot/nodesets
|
257
263
|
- spec/acceptance/suites/windows/00_default_spec.rb
|
258
264
|
- spec/acceptance/suites/windows/metadata.yml
|
259
265
|
- spec/acceptance/suites/windows/nodesets/default.yml
|