Skip to content

Commit 5c078c8

Browse files
authored
Merge pull request #9443 from jordanbreen28/bug-honour_custom_insync_in_noop
(bug) - Honour custom insync in noop mode
2 parents 06a56b6 + 365c5a6 commit 5c078c8

File tree

2 files changed

+20
-3
lines changed

2 files changed

+20
-3
lines changed

lib/puppet/transaction/resource_harness.rb

+7-3
Original file line numberDiff line numberDiff line change
@@ -235,9 +235,13 @@ def audit_message(param, do_audit, historical_value, current_value)
235235
end
236236

237237
def noop(event, param, current_value, audit_message)
238-
event.message = param.format(_("current_value %s, should be %s (noop)"),
239-
param.is_to_s(current_value),
240-
param.should_to_s(param.should)) + audit_message.to_s
238+
if param.sensitive
239+
event.message = param.format(_("current_value %s, should be %s (noop)"),
240+
param.is_to_s(current_value),
241+
param.should_to_s(param.should)) + audit_message.to_s
242+
else
243+
event.message = "#{param.change_to_s(current_value, param.should)} (noop)#{audit_message}"
244+
end
241245
event.status = "noop"
242246
end
243247

spec/unit/transaction/resource_harness_spec.rb

+13
Original file line numberDiff line numberDiff line change
@@ -176,6 +176,10 @@ def insync?(value)
176176
def should_to_s(value)
177177
(@resource.behaviors[:on_should_to_s] || proc { "'#{value}'" }).call
178178
end
179+
180+
def change_to_s(value, should)
181+
"some custom insync message"
182+
end
179183
end
180184

181185
newparam(:name) do
@@ -249,6 +253,7 @@ def self.name
249253
expect(status.events[0].property).to eq('ensure')
250254
expect(status.events[0].name.to_s).to eq('Testing_created')
251255
expect(status.events[0].status).to eq('success')
256+
expect(status.events[0].message).to eq 'some custom insync message'
252257
end
253258

254259
it "ensure is in sync means that the rest *does* happen" do
@@ -283,6 +288,14 @@ def self.name
283288
expect(testing_errors[0].message).not_to be_nil
284289
expect(resource_errors[0].message).not_to eq("Puppet::Util::Log requires a message")
285290
end
291+
292+
it "displays custom insync message in noop" do
293+
resource = an_ensurable_resource_reacting_as(:present? => true)
294+
resource[:noop] = true
295+
status = @harness.evaluate(resource)
296+
sync_event = status.events[0]
297+
expect(sync_event.message).to eq 'some custom insync message (noop)'
298+
end
286299
end
287300

288301
describe "when a caught error occurs" do

0 commit comments

Comments
 (0)