diff options
author | Markus Roberts <Markus@reality.com> | 2009-12-21 23:55:39 -0800 |
---|---|---|
committer | James Turnbull <james@lovedthanlost.net> | 2009-12-23 09:34:14 +1100 |
commit | 0e5d2647bd5f515dbaacf45f9e7dda5c27eb465a (patch) | |
tree | 8bd5ad819541e51e885d583b16be6e24126a1ed2 | |
parent | d60ea0e52debf03fddb2336704df10589108fe3a (diff) | |
download | puppet-0e5d2647bd5f515dbaacf45f9e7dda5c27eb465a.tar.gz puppet-0e5d2647bd5f515dbaacf45f9e7dda5c27eb465a.tar.xz puppet-0e5d2647bd5f515dbaacf45f9e7dda5c27eb465a.zip |
Fix for #2940 (propogating nil rather than reporting the error)
-rwxr-xr-x | lib/puppet/provider/package/sun.rb | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/puppet/provider/package/sun.rb b/lib/puppet/provider/package/sun.rb index f72738e2f..cd511b1af 100755 --- a/lib/puppet/provider/package/sun.rb +++ b/lib/puppet/provider/package/sun.rb @@ -94,7 +94,7 @@ Puppet::Type.type(:package).provide :sun, :parent => Puppet::Provider::Package d execpipe(cmd) { |process| # we're using the long listing, so each line is a separate # piece of information - process.each { |line| + process.readlines.each { |line| case line when /^$/ # ignore when /\s*([A-Z]+):\s+(.+)/ @@ -111,8 +111,9 @@ Puppet::Type.type(:package).provide :sun, :parent => Puppet::Provider::Package d } } return hash - rescue Puppet::ExecutionFailure - return nil + rescue Puppet::ExecutionFailure => detail + puts detail.backtrace if Puppet[:trace] + raise Puppet::Error, "Unable to get information about package #{@resource[:name]} because of: #{detail}" end end |