class Facts::Freebsd::Os::Release
Constants
- ALIASES
- FACT_NAME
Public Instance Methods
Source
# File lib/facter/facts/freebsd/os/release.rb, line 10 def call_the_resolver installed_userland = Facter::Resolvers::Freebsd::FreebsdVersion.resolve(:installed_userland) return Facter::ResolvedFact.new(FACT_NAME, nil) if !installed_userland || installed_userland.empty? value = build_release_hash_from_version(installed_userland) [Facter::ResolvedFact.new(FACT_NAME, value), Facter::ResolvedFact.new(ALIASES.first, value[:major], :legacy), Facter::ResolvedFact.new(ALIASES.last, installed_userland, :legacy)] end
Private Instance Methods
Source
# File lib/facter/facts/freebsd/os/release.rb, line 24 def build_release_hash_from_version(version_string) version, branch_value = version_string.split('-', 2) major_value, minor_value = version.split('.') patchlevel_value = branch_value.split('-p')[1] value = { full: version_string, major: major_value, branch: branch_value } value[:minor] = minor_value if minor_value value[:patchlevel] = patchlevel_value if patchlevel_value value end