view modules/stdlib/lib/facter/package_provider.rb @ 376:752c0861a7c3

Fix tailing output in update check "-2" means "last two lines". We want "not the first two lines" because the first two are the metadata date and a blank line. This should stop the emails that are just the metadata date!
author IBBoard <dev@ibboard.co.uk>
date Sat, 25 Sep 2021 14:59:33 +0100
parents d9352a684e62
children adf6fe9bbc17
line wrap: on
line source

# 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'

# These will be nil if Puppet is not available.
Facter.add(:package_provider) do
  # Instantiates a dummy package resource and return the provider
  setcode do
    if defined? Gem && 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