be6d4d2ffb
On e.g. Ubuntu 12.04 LTS Gem is not there by default so i added a check to not fail in that fact if this is the case.
21 lines
639 B
Ruby
21 lines
639 B
Ruby
# Fact: package_provider
|
|
#
|
|
# Purpose: Returns the default provider Puppet will choose to manage packages
|
|
# on this system
|
|
#
|
|
# Resolution: Instantiates a dummy package resource and return the provider
|
|
#
|
|
# Caveats:
|
|
#
|
|
require 'puppet/type'
|
|
require 'puppet/type/package'
|
|
|
|
Facter.add(:package_provider) do
|
|
setcode do
|
|
if defined? Gem and Gem::Version.new(Facter.value(:puppetversion).split(' ')[0]) >= Gem::Version.new('3.6')
|
|
Puppet::Type.type(:package).newpackage(:name => 'dummy', :allow_virtual => 'true')[:provider].to_s
|
|
else
|
|
Puppet::Type.type(:package).newpackage(:name => 'dummy')[:provider].to_s
|
|
end
|
|
end
|
|
end
|