# 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:         if @property_hash[:ensure] and @property_hash[:ensure] != :absent
 98:             flag = "-U"
 99:         end
100: 
101:         rpm flag, "--oldpackage", source
102:     end