Current File : //opt/puppetlabs/puppet/lib/ruby/vendor_ruby/facter/facts/sles/os/distro/release.rb |
# frozen_string_literal: true
module Facts
module Sles
module Os
module Distro
class Release
FACT_NAME = 'os.distro.release'
ALIASES = %w[lsbdistrelease lsbmajdistrelease lsbminordistrelease].freeze
def call_the_resolver
version = Facter::Resolvers::OsRelease.resolve(:version_id)
fact_value = build_fact_list(version)
[Facter::ResolvedFact.new(FACT_NAME, fact_value),
Facter::ResolvedFact.new(ALIASES[0], fact_value[:full], :legacy),
Facter::ResolvedFact.new(ALIASES[1], fact_value[:major], :legacy),
Facter::ResolvedFact.new(ALIASES[2], fact_value[:minor], :legacy)]
end
def build_fact_list(version)
if version.include?('.')
{
full: version,
major: version.split('.').first,
minor: version.split('.').last
}
else
{ full: version, major: version, minor: nil }
end
end
end
end
end
end
end