summaryrefslogtreecommitdiffstats
path: root/lib/puppet
diff options
context:
space:
mode:
authorluke <luke@980ebf18-57e1-0310-9a29-db15c13687c0>2007-02-27 23:18:52 +0000
committerluke <luke@980ebf18-57e1-0310-9a29-db15c13687c0>2007-02-27 23:18:52 +0000
commit7d965aecfe3c472381e0dd2113e51844c3000e05 (patch)
treefaaa358c85a960943e30ba2c68ffde150c8d0051 /lib/puppet
parent36ae6a26c20e3a7258f57cdee03f5f8a2244a813 (diff)
downloadpuppet-7d965aecfe3c472381e0dd2113e51844c3000e05.tar.gz
puppet-7d965aecfe3c472381e0dd2113e51844c3000e05.tar.xz
puppet-7d965aecfe3c472381e0dd2113e51844c3000e05.zip
Applying patch by cstorey from #521
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2235 980ebf18-57e1-0310-9a29-db15c13687c0
Diffstat (limited to 'lib/puppet')
-rwxr-xr-xlib/puppet/provider/package/yum.rb19
1 files changed, 16 insertions, 3 deletions
diff --git a/lib/puppet/provider/package/yum.rb b/lib/puppet/provider/package/yum.rb
index 7894439c2..262048900 100755
--- a/lib/puppet/provider/package/yum.rb
+++ b/lib/puppet/provider/package/yum.rb
@@ -4,9 +4,22 @@ Puppet::Type.type(:package).provide :yum, :parent => :rpm do
defaultfor :operatingsystem => [:fedora, :centos, :redhat]
- # Install a package using 'yum'.
def install
- output = yum "-d", "0", "-e", "0", "-y", :install, @model[:name]
+
+ should = @model.should(:ensure)
+ self.debug "Ensuring => #{should}"
+ wanted = @model[:name]
+
+ # XXX: We don't actually deal with epochs here.
+ case should
+ when true, false, Symbol
+ # pass
+ else
+ # Add the package version
+ wanted += "-%s" % should
+ end
+
+ output = yum "-d", "0", "-e", "0", "-y", :install, wanted
unless self.query
raise Puppet::Error.new(
@@ -34,7 +47,7 @@ Puppet::Type.type(:package).provide :yum, :parent => :rpm do
end
def versionable?
- false
+ true
end
end