summaryrefslogtreecommitdiffstats
path: root/lib/puppet
diff options
context:
space:
mode:
Diffstat (limited to 'lib/puppet')
-rw-r--r--lib/puppet/provider.rb14
-rw-r--r--lib/puppet/util.rb2
2 files changed, 4 insertions, 12 deletions
diff --git a/lib/puppet/provider.rb b/lib/puppet/provider.rb
index e9dcdec15..88a7ba8a6 100644
--- a/lib/puppet/provider.rb
+++ b/lib/puppet/provider.rb
@@ -51,17 +51,9 @@ class Puppet::Provider
unless metaclass.method_defined? name
meta_def(name) do |args|
cmd = command(name) + " " + args
- begin
- output = execute cmd
- rescue Puppet::ExecutionFailure
- if output
- raise Puppet::ExecutionFailure.new(output)
- else
- raise Puppet::ExecutionFailure, "Could not execute '#{cmd}'"
- end
- end
-
- return output
+ # This might throw an ExecutionFailure, but the system above
+ # will catch it, if so.
+ return execute(cmd)
end
unless method_defined? name
define_method(name) do |args|
diff --git a/lib/puppet/util.rb b/lib/puppet/util.rb
index e91ea0156..c6ad30e3b 100644
--- a/lib/puppet/util.rb
+++ b/lib/puppet/util.rb
@@ -436,7 +436,7 @@ module Util
if failonfail
unless $? == 0
- raise ExecutionFailure, output
+ raise ExecutionFailure, "Could not execute '%s': %s" % [command, output]
end
end