Sha256: b14478e61a9fdeb7f14bd33f3c65f731af5a905a64df462f345a344c739d8608

Contents?: true

Size: 1.06 KB

Versions: 39

Compression:

Stored size: 1.06 KB

Contents

# frozen_string_literal: true

module Facts
  module Windows
    module Os
      class Release
        FACT_NAME = 'os.release'
        ALIASES = %w[operatingsystemmajrelease operatingsystemrelease].freeze

        def call_the_resolver
          arr = []
          input = {
            consumerrel: description_resolver(:consumerrel),
            description: description_resolver(:description),
            version: kernel_resolver(:kernelmajorversion),
            kernel_version: kernel_resolver(:kernelversion)
          }

          fact_value = Facter::Util::Facts::WindowsReleaseFinder.find_release(input)
          arr << Facter::ResolvedFact.new(FACT_NAME, ({ full: fact_value, major: fact_value } if fact_value))
          ALIASES.each { |aliass| arr << Facter::ResolvedFact.new(aliass, fact_value, :legacy) }
          arr
        end

        def description_resolver(key)
          Facter::Resolvers::WinOsDescription.resolve(key)
        end

        def kernel_resolver(key)
          Facter::Resolvers::Kernel.resolve(key)
        end
      end
    end
  end
end

Version data entries

39 entries across 39 versions & 1 rubygems

Version Path
facter-4.2.10 lib/facter/facts/windows/os/release.rb
facter-4.2.9 lib/facter/facts/windows/os/release.rb
facter-4.2.8 lib/facter/facts/windows/os/release.rb
facter-4.2.7 lib/facter/facts/windows/os/release.rb
facter-4.2.6 lib/facter/facts/windows/os/release.rb
facter-4.2.5 lib/facter/facts/windows/os/release.rb
facter-4.2.4 lib/facter/facts/windows/os/release.rb
facter-4.2.3 lib/facter/facts/windows/os/release.rb
facter-4.2.2 lib/facter/facts/windows/os/release.rb
facter-4.2.1 lib/facter/facts/windows/os/release.rb
facter-4.2.0 lib/facter/facts/windows/os/release.rb
facter-4.1.1 lib/facter/facts/windows/os/release.rb
facter-4.1.0 lib/facter/facts/windows/os/release.rb
facter-4.0.52 lib/facter/facts/windows/os/release.rb
facter-4.0.51 lib/facter/facts/windows/os/release.rb
facter-4.0.50 lib/facter/facts/windows/os/release.rb
facter-4.0.49 lib/facter/facts/windows/os/release.rb
facter-4.0.48 lib/facter/facts/windows/os/release.rb
facter-4.0.47 lib/facter/facts/windows/os/release.rb