diff options
-rw-r--r-- | CHANGELOG | 3 | ||||
-rw-r--r-- | lib/puppet/provider/package/portage.rb | 8 |
2 files changed, 10 insertions, 1 deletions
@@ -1,3 +1,6 @@ + The Portage package provider now calls eix-update automatically + when eix's database is absent or out of sync (#666). + Mounts now correctly handle existing fstabs with no pass or dump values (#550). diff --git a/lib/puppet/provider/package/portage.rb b/lib/puppet/provider/package/portage.rb index 2e06177cc..bcfcfde2e 100644 --- a/lib/puppet/provider/package/portage.rb +++ b/lib/puppet/provider/package/portage.rb @@ -5,7 +5,7 @@ Puppet::Type.type(:package).provide :portage, :parent => Puppet::Provider::Packa has_feature :versionable - commands :emerge => "/usr/bin/emerge", :eix => "/usr/bin/eix" + commands :emerge => "/usr/bin/emerge", :eix => "/usr/bin/eix", :update_eix => "/usr/bin/update-eix" defaultfor :operatingsystem => :gentoo @@ -16,6 +16,9 @@ Puppet::Type.type(:package).provide :portage, :parent => Puppet::Provider::Packa search_format = "{installedversionsshort}<category> <name> [<installedversionsshort>] [<best>] <homepage> <description>{}" begin + if !FileUtils.uptodate?("/var/cache/eix", %w(/usr/bin/eix /usr/portage/metadata/timestamp)) + update_eix + end search_output = eix "--nocolor", "--format", search_format packages = [] @@ -72,6 +75,9 @@ Puppet::Type.type(:package).provide :portage, :parent => Puppet::Provider::Packa search_format = "<category> <name> [<installedversionsshort>] [<best>] <homepage> <description>" begin + if !FileUtils.uptodate?("/var/cache/eix", %w(/usr/bin/eix /usr/portage/metadata/timestamp)) + update_eix + end search_output = eix "--nocolor", "--format", search_format, "--exact", search_field, search_value packages = [] |