diff options
Diffstat (limited to 'lib/chef/provider/package/portage.rb')
-rw-r--r-- | lib/chef/provider/package/portage.rb | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/chef/provider/package/portage.rb b/lib/chef/provider/package/portage.rb index 816e262ab0..bb047ad2fa 100644 --- a/lib/chef/provider/package/portage.rb +++ b/lib/chef/provider/package/portage.rb @@ -92,10 +92,9 @@ class Chef def candidate_version return @candidate_version if @candidate_version - status = popen4("emerge --color n --nospinner --search #{@new_resource.package_name.split('/').last}") do |pid, stdin, stdout, stderr| - available, installed = parse_emerge(@new_resource.package_name, stdout.read) - @candidate_version = available - end + status = shell_out("emerge --color n --nospinner --search #{@new_resource.package_name.split('/').last}") + available, installed = parse_emerge(@new_resource.package_name, status.stdout) + @candidate_version = available unless status.exitstatus == 0 raise Chef::Exceptions::Package, "emerge --search failed - #{status.inspect}!" |