diff options
author | David Schmitt <david.schmitt@puppetlabs.com> | 2015-12-18 17:38:04 +0000 |
---|---|---|
committer | David Schmitt <david.schmitt@puppetlabs.com> | 2015-12-18 17:38:04 +0000 |
commit | 35b5d6bcc1c0d306eab50280b115e1e3a11671e0 (patch) | |
tree | 05feabcf310223111d0c202e2171310da591ac89 /lib | |
parent | 8ea26c4c45347d402bc6e280ca021d3f1bbaab4f (diff) |
Allow package_provider fact to resolve on PE 3.x
PE 3.x emits a puppetversion fact in the format "3.x.x (Puppet Enterprise 3.x.x)". This fact causes an error when invoked on PE 3.x: Could not retrieve fact='package_provider', resolution='<anonymous>': Malformed version number string 3.8.1 (Puppet Enterprise 3.8.1
This fix has been tested on PE 3.8.2 and should work for PE 3.3, 3.7, and 3.8.
Original-fix-by: Alex Harden <aharden@gmail.com>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/facter/package_provider.rb | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/facter/package_provider.rb b/lib/facter/package_provider.rb index 65a2da0..1a0bac9 100644 --- a/lib/facter/package_provider.rb +++ b/lib/facter/package_provider.rb @@ -12,7 +12,7 @@ require 'puppet/type/package' Facter.add(:package_provider) do setcode do - if Gem::Version.new(Facter.value(:puppetversion)) >= Gem::Version.new('3.6') + if 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 |