class Facter::Util::Facts::WindowsReleaseFinder
Public Class Methods
find_release(input)
click to toggle source
# File lib/facter/util/facts/windows_release_finder.rb, line 8 def find_release(input) version = input[:version] return unless version consumerrel = input[:consumerrel] description = input[:description] kernel_version = input[:kernel_version] if version =~ /10.0/ check_version_10_11(consumerrel, kernel_version) else check_version_6(version, consumerrel) || check_version_5(version, consumerrel, description) || version end end
Private Class Methods
check_version_10_11(consumerrel, kernel_version)
click to toggle source
# File lib/facter/util/facts/windows_release_finder.rb, line 25 def check_version_10_11(consumerrel, kernel_version) build_number = kernel_version[/([^.]*)$/].to_i return '11' if build_number >= 22_000 return '10' if consumerrel if build_number >= 20_348 '2022' elsif build_number >= 17_623 '2019' else '2016' end end
check_version_5(version, consumerrel, description)
click to toggle source
# File lib/facter/util/facts/windows_release_finder.rb, line 49 def check_version_5(version, consumerrel, description) return unless version =~ /5.2/ return 'XP' if consumerrel description == 'R2' ? '2003 R2' : '2003' end
check_version_6(version, consumerrel)
click to toggle source
# File lib/facter/util/facts/windows_release_finder.rb, line 40 def check_version_6(version, consumerrel) hash = {} hash['6.3'] = consumerrel ? '8.1' : '2012 R2' hash['6.2'] = consumerrel ? '8' : '2012' hash['6.1'] = consumerrel ? '7' : '2008 R2' hash['6.0'] = consumerrel ? 'Vista' : '2008' hash[version] end