diff options
author | Daniel Pittman <daniel@rimspace.net> | 2011-08-12 06:23:00 -0700 |
---|---|---|
committer | Daniel Pittman <daniel@rimspace.net> | 2011-08-12 06:23:00 -0700 |
commit | 1ce2973e8af2300aff2b042257d8181855cf887d (patch) | |
tree | 86953fd295ada5664bf2243e15bf1fc928fb8330 /lib | |
parent | fa1ec4dd93f015c2943271c9ae107991c6d3c90e (diff) | |
parent | 344aef91a3589ce3fcc4dfb00df16762ceef81d5 (diff) | |
download | puppet-1ce2973e8af2300aff2b042257d8181855cf887d.tar.gz puppet-1ce2973e8af2300aff2b042257d8181855cf887d.tar.xz puppet-1ce2973e8af2300aff2b042257d8181855cf887d.zip |
Merge pull request #22 from domcleal/tickets/2.7.x/8808
(#8808) Fail Augeas resource when unable to save changes
Diffstat (limited to 'lib')
-rw-r--r-- | lib/puppet/provider/augeas/augeas.rb | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/lib/puppet/provider/augeas/augeas.rb b/lib/puppet/provider/augeas/augeas.rb index 95142568e..eb9c69ac8 100644 --- a/lib/puppet/provider/augeas/augeas.rb +++ b/lib/puppet/provider/augeas/augeas.rb @@ -290,8 +290,10 @@ Puppet::Type.type(:augeas).provide(:augeas) do set_augeas_save_mode(SAVE_NEWFILE) do_execute_changes save_result = @aug.save + fail("Save failed with return code #{save_result}") unless save_result + saved_files = @aug.match("/augeas/events/saved") - if save_result and saved_files.size > 0 + if saved_files.size > 0 root = resource[:root].sub(/^\/$/, "") saved_files.each do |key| saved_file = @aug.get(key).to_s.sub(/^\/files/, root) @@ -305,13 +307,13 @@ Puppet::Type.type(:augeas).provide(:augeas) do debug("Files changed, should execute") return_value = true else - debug("Skipping because no files were changed or save failed") + debug("Skipping because no files were changed") return_value = false end end end ensure - if not return_value or resource.noop? + if not return_value or resource.noop? or not save_result close_augeas end end |