diff options
author | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2007-06-17 00:06:46 +0000 |
---|---|---|
committer | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2007-06-17 00:06:46 +0000 |
commit | e8c6cd96f58aca188e5944256596987e82d147ea (patch) | |
tree | 44da001e53d7375ebcce810477c40674c56c7266 /lib | |
parent | 4f7c650cf7a0ff89abebbb79a227a2515af02c31 (diff) | |
download | puppet-e8c6cd96f58aca188e5944256596987e82d147ea.tar.gz puppet-e8c6cd96f58aca188e5944256596987e82d147ea.tar.xz puppet-e8c6cd96f58aca188e5944256596987e82d147ea.zip |
Fixing the yum provider, and fixing the unit tests so the failures people were experiencing will result in failed tests. This fixes #672.
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2595 980ebf18-57e1-0310-9a29-db15c13687c0
Diffstat (limited to 'lib')
-rwxr-xr-x | lib/puppet/provider/package/rpm.rb | 10 | ||||
-rwxr-xr-x | lib/puppet/provider/package/yum.rb | 4 |
2 files changed, 6 insertions, 8 deletions
diff --git a/lib/puppet/provider/package/rpm.rb b/lib/puppet/provider/package/rpm.rb index de81bb12e..542ac89fc 100755 --- a/lib/puppet/provider/package/rpm.rb +++ b/lib/puppet/provider/package/rpm.rb @@ -58,10 +58,10 @@ Puppet::Type.type(:package).provide :rpm, :source => :rpm, :parent => Puppet::Pr regex = %r{^(\S+)\s+(\S+)} fields = [:instance, :ensure] - hash = {} + attrs = {} if match = regex.match(output) fields.zip(match.captures) { |field,value| - hash[field] = value + attrs[field] = value } else raise Puppet::DevError, @@ -69,11 +69,9 @@ Puppet::Type.type(:package).provide :rpm, :source => :rpm, :parent => Puppet::Pr output end - @nvr = hash[:instance] + @nvr = attrs[:instance] - @property_hash = hash - - return hash + return attrs end # Here we just retrieve the version from the file specified in the source. diff --git a/lib/puppet/provider/package/yum.rb b/lib/puppet/provider/package/yum.rb index b9212ef37..f6c5ec401 100755 --- a/lib/puppet/provider/package/yum.rb +++ b/lib/puppet/provider/package/yum.rb @@ -40,10 +40,10 @@ Puppet::Type.type(:package).provide :yum, :parent => :rpm, :source => :rpm do else # Yum didn't find updates, pretend the current # version is the latest - unless defined?(@current_values) and @current_values[:ensure] + unless properties[:ensure] != :absent raise Puppet::DevError, "Tried to get latest on a missing package" end - return @current_values[:ensure] + return @property_hash[:ensure] end end |