# File lib/puppet/provider/package/rpm.rb, line 84
 84:   def install
 85:     source = nil
 86:     unless source = @resource[:source]
 87:       @resource.fail "RPMs must specify a package source"
 88:     end
 89:     # RPM gets pissy if you try to install an already
 90:     # installed package
 91:     if @resource.should(:ensure) == @property_hash[:ensure] or
 92:       @resource.should(:ensure) == :latest && @property_hash[:ensure] == latest
 93:       return
 94:     end
 95: 
 96:     flag = "-i"
 97:     flag = "-U" if @property_hash[:ensure] and @property_hash[:ensure] != :absent
 98: 
 99:     rpm flag, "--oldpackage", source
100:   end