File tree Expand file tree Collapse file tree 1 file changed +12
-1
lines changed Expand file tree Collapse file tree 1 file changed +12
-1
lines changed Original file line number Diff line number Diff line change 11# frozen_string_literal: true
22
33require 'pathname'
4+ require 'puppet/pops/evaluator/deferred_resolver' # ← add: resolver API
45
56Puppet ::Type . newtype ( :dsc ) do
67 desc <<-DOC
@@ -17,6 +18,7 @@ module => 'PSDesiredStateConfiguration',
1718 }
1819 }
1920 DOC
21+
2022 require Pathname . new ( __FILE__ ) . dirname + '../../' + 'puppet/type/base_dsc_lite'
2123 require Pathname . new ( __FILE__ ) . dirname + '../../puppet_x/puppetlabs/dsc_lite/dsc_type_helpers'
2224
@@ -105,7 +107,16 @@ def change_to_s(currentvalue, newvalue)
105107 end
106108
107109 munge do |value |
108- PuppetX ::DscLite ::TypeHelpers . munge_sensitive_hash ( value )
110+ # If the compiler is present (compile-time), resolve any direct/nested Deferred values.
111+ compiler = Puppet . lookup ( :compiler ) { nil }
112+ resolved = if compiler
113+ Puppet ::Pops ::Evaluator ::DeferredResolver . resolve ( value , compiler )
114+ else
115+ value
116+ end
117+
118+ # Preserve your existing sensitive handling on the resolved hash
119+ PuppetX ::DscLite ::TypeHelpers . munge_sensitive_hash ( resolved )
109120 end
110121 end
111122
You can’t perform that action at this time.
0 commit comments