Skip to content

Commit b0dffd8

Browse files
committed
enable preprocess_deferred
1 parent b27b8f6 commit b0dffd8

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

spec/acceptance/deferred_spec.rb

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,25 @@ def read_win_file_if_exists(path)
1717
{ exists: exists, content: exists ? body : '' }
1818
end
1919

20+
RSpec.configure do |config|
21+
config.before(:all) do
22+
# Ensure Deferred values are preprocessed before provider runs (Puppet 8 default is false)
23+
run_shell('puppet config set preprocess_deferred true --section agent')
24+
# Ensure JSON catalog serialization (avoids PSON issues with Deferred)
25+
run_shell('puppet config set preferred_serialization_format json --section agent')
26+
27+
# Assert settings for clear diagnostics in CI logs
28+
pp = run_shell('puppet config print preprocess_deferred --section agent').stdout.strip
29+
fmt = run_shell('puppet config print preferred_serialization_format --section agent').stdout.strip
30+
raise 'preprocess_deferred not true on agent!' unless pp.casecmp('true').zero?
31+
raise 'preferred_serialization_format not json on agent!' unless fmt.casecmp('json').zero?
32+
end
33+
end
34+
2035
describe 'deferred values with dsc_lite' do
2136
let(:control_manifest) { read_fixture('01_file_deferred.pp') }
2237
let(:dsc_deferred_direct) { read_fixture('02_dsc_deferred_direct.pp') }
23-
let(:dsc_deferred_inline) { read_fixture('02b_dsc_deferred_inline.pp') } # <— NEW
38+
let(:dsc_deferred_inline) { read_fixture('02b_dsc_deferred_inline.pp') } # NEW
2439
let(:dsc_deferred_stringified) { read_fixture('03a_dsc_deferred_stringified.pp') }
2540
let(:dsc_deferred_bad_unwrap) { read_fixture('03b_dsc_deferred_bad_unwrap.pp') }
2641

0 commit comments

Comments
 (0)