Sha256: 83d3f77a62ffd31c925c05ec4cf7b8ca87253b8e13e9d9ecdc36777983e312df
Contents?: true
Size: 1.19 KB
Versions: 1
Compression:
Stored size: 1.19 KB
Contents
# frozen_string_literal: true require 'win32/registry' module Facter module Resolvers class ProductRelease < BaseResolver init_resolver class << self private def post_resolve(fact_name, _options) @fact_list.fetch(fact_name) { read_fact_from_registry(fact_name) } end def read_fact_from_registry(fact_name) reg = ::Win32::Registry::HKEY_LOCAL_MACHINE.open('SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion') build_fact_list(reg) reg.close @fact_list[fact_name] end def build_fact_list(reg) reg.each do |name, value| case name when 'EditionID' @fact_list[:edition_id] = value when 'InstallationType' @fact_list[:installation_type] = value when 'ProductName' @fact_list[:product_name] = value when 'DisplayVersion' @fact_list[:release_id] = value @fact_list[:display_version] = value when 'ReleaseId' @fact_list[:release_id] = value unless @fact_list[:release_id] end end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
facter-4.6.0 | lib/facter/resolvers/windows/product_release.rb |