facter 4.0.40 → 4.0.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. checksums.yaml +4 -4
  2. data/lib/facter.rb +72 -19
  3. data/lib/facter/config.rb +355 -0
  4. data/lib/facter/custom_facts/core/aggregate.rb +51 -17
  5. data/lib/facter/custom_facts/core/execution.rb +54 -38
  6. data/lib/facter/custom_facts/core/execution/base.rb +46 -40
  7. data/lib/facter/custom_facts/util/fact.rb +1 -1
  8. data/lib/facter/custom_facts/util/parser.rb +17 -3
  9. data/lib/facter/custom_facts/util/resolution.rb +40 -11
  10. data/lib/facter/facts/linux/ec2_metadata.rb +5 -30
  11. data/lib/facter/facts/linux/ec2_userdata.rb +5 -28
  12. data/lib/facter/facts/linux/is_virtual.rb +7 -46
  13. data/lib/facter/facts/linux/virtual.rb +3 -58
  14. data/lib/facter/facts/rhel/os/release.rb +1 -1
  15. data/lib/facter/facts/solaris/hypervisors/ldom.rb +3 -0
  16. data/lib/facter/facts/solaris/ldom.rb +4 -1
  17. data/lib/facter/facts/solaris/zones.rb +1 -1
  18. data/lib/facter/facts_utils/virtual_detector.rb +78 -0
  19. data/lib/facter/framework/benchmarking/timer.rb +4 -2
  20. data/lib/facter/framework/cli/cli.rb +19 -5
  21. data/lib/facter/framework/config/fact_groups.rb +10 -8
  22. data/lib/facter/framework/core/cache_manager.rb +78 -28
  23. data/lib/facter/framework/core/fact/internal/core_fact.rb +6 -1
  24. data/lib/facter/framework/core/fact/internal/internal_fact_manager.rb +38 -4
  25. data/lib/facter/framework/core/fact_augmenter.rb +1 -1
  26. data/lib/facter/framework/core/fact_loaders/fact_loader.rb +1 -1
  27. data/lib/facter/framework/core/fact_manager.rb +1 -1
  28. data/lib/facter/framework/core/options/config_file_options.rb +16 -5
  29. data/lib/facter/framework/core/options/option_store.rb +40 -20
  30. data/lib/facter/framework/detector/os_hierarchy.rb +5 -9
  31. data/lib/facter/resolvers/aio_agent_version.rb +1 -1
  32. data/lib/facter/resolvers/aix/architecture_resolver.rb +17 -2
  33. data/lib/facter/resolvers/aix/disks.rb +2 -1
  34. data/lib/facter/resolvers/aix/filesystem_resolver.rb +1 -1
  35. data/lib/facter/resolvers/aix/hardware_resolver.rb +2 -1
  36. data/lib/facter/resolvers/aix/load_averages_resolver.rb +2 -1
  37. data/lib/facter/resolvers/aix/memory.rb +2 -1
  38. data/lib/facter/resolvers/aix/mountpoints.rb +2 -1
  39. data/lib/facter/resolvers/aix/networking_resolver.rb +1 -1
  40. data/lib/facter/resolvers/aix/nim.rb +1 -1
  41. data/lib/facter/resolvers/aix/os_level.rb +2 -2
  42. data/lib/facter/resolvers/aix/partitions.rb +2 -1
  43. data/lib/facter/resolvers/aix/processors.rb +2 -1
  44. data/lib/facter/resolvers/aix/serialnumber.rb +1 -1
  45. data/lib/facter/resolvers/augeas_resolver.rb +8 -2
  46. data/lib/facter/resolvers/base_resolver.rb +11 -4
  47. data/lib/facter/resolvers/bsd/processors.rb +13 -8
  48. data/lib/facter/resolvers/cloud.rb +1 -1
  49. data/lib/facter/resolvers/containers.rb +2 -1
  50. data/lib/facter/resolvers/debian_version.rb +1 -1
  51. data/lib/facter/resolvers/disk_resolver.rb +15 -4
  52. data/lib/facter/resolvers/dmi_decode.rb +2 -1
  53. data/lib/facter/resolvers/dmi_resolver.rb +4 -3
  54. data/lib/facter/resolvers/ec2.rb +2 -1
  55. data/lib/facter/resolvers/eos_release_resolver.rb +1 -1
  56. data/lib/facter/resolvers/facterversion_resolver.rb +1 -1
  57. data/lib/facter/resolvers/filesystems_resolver.rb +4 -1
  58. data/lib/facter/resolvers/fips_enabled_resolver.rb +4 -1
  59. data/lib/facter/resolvers/freebsd/dmi_resolver.rb +1 -1
  60. data/lib/facter/resolvers/freebsd/freebsd_version_resolver.rb +9 -7
  61. data/lib/facter/resolvers/freebsd/geom_resolver.rb +14 -21
  62. data/lib/facter/resolvers/freebsd/processors.rb +13 -8
  63. data/lib/facter/resolvers/freebsd/swap_memory_resolver.rb +2 -1
  64. data/lib/facter/resolvers/freebsd/system_memory_resolver.rb +2 -1
  65. data/lib/facter/resolvers/gce.rb +2 -1
  66. data/lib/facter/resolvers/hostname_resolver.rb +2 -1
  67. data/lib/facter/resolvers/identity_resolver.rb +2 -1
  68. data/lib/facter/resolvers/linux/docker_uptime.rb +2 -1
  69. data/lib/facter/resolvers/linux/load_averages.rb +2 -1
  70. data/lib/facter/resolvers/load_averages.rb +2 -1
  71. data/lib/facter/resolvers/lpar_resolver.rb +1 -1
  72. data/lib/facter/resolvers/lsb_release_resolver.rb +1 -1
  73. data/lib/facter/resolvers/lspci.rb +1 -1
  74. data/lib/facter/resolvers/macosx/dmi_resolver.rb +1 -1
  75. data/lib/facter/resolvers/macosx/filesystems_resolver.rb +1 -1
  76. data/lib/facter/resolvers/macosx/load_averages_resolver.rb +2 -1
  77. data/lib/facter/resolvers/macosx/mountpoints_resolver.rb +2 -1
  78. data/lib/facter/resolvers/macosx/processor_resolver.rb +2 -1
  79. data/lib/facter/resolvers/macosx/swap_memory_resolver.rb +2 -1
  80. data/lib/facter/resolvers/macosx/system_memory_resolver.rb +2 -1
  81. data/lib/facter/resolvers/macosx/system_profiler_resolver.rb +1 -3
  82. data/lib/facter/resolvers/memory_resolver.rb +15 -15
  83. data/lib/facter/resolvers/mountpoints_resolver.rb +54 -23
  84. data/lib/facter/resolvers/networking_linux_resolver.rb +15 -9
  85. data/lib/facter/resolvers/networking_resolver.rb +1 -1
  86. data/lib/facter/resolvers/open_vz.rb +1 -1
  87. data/lib/facter/resolvers/os_release_resolver.rb +1 -1
  88. data/lib/facter/resolvers/partitions.rb +62 -58
  89. data/lib/facter/resolvers/path_resolver.rb +1 -1
  90. data/lib/facter/resolvers/processors_resolver.rb +9 -2
  91. data/lib/facter/resolvers/puppet_version_resolver.rb +1 -1
  92. data/lib/facter/resolvers/redhat_release_resolver.rb +1 -1
  93. data/lib/facter/resolvers/ruby_resolver.rb +1 -1
  94. data/lib/facter/resolvers/selinux_resolver.rb +1 -1
  95. data/lib/facter/resolvers/solaris/disks.rb +1 -1
  96. data/lib/facter/resolvers/solaris/dmi.rb +3 -1
  97. data/lib/facter/resolvers/solaris/dmi_sparc.rb +1 -1
  98. data/lib/facter/resolvers/solaris/filesystems.rb +1 -1
  99. data/lib/facter/resolvers/solaris/ipaddress.rb +2 -1
  100. data/lib/facter/resolvers/solaris/ldom.rb +1 -3
  101. data/lib/facter/resolvers/solaris/memory.rb +2 -1
  102. data/lib/facter/resolvers/solaris/mountpoints.rb +60 -0
  103. data/lib/facter/resolvers/solaris/networking.rb +2 -3
  104. data/lib/facter/resolvers/solaris/os_release.rb +6 -4
  105. data/lib/facter/resolvers/solaris/processors.rb +2 -1
  106. data/lib/facter/resolvers/solaris/zone.rb +1 -1
  107. data/lib/facter/resolvers/solaris/zone_name.rb +1 -1
  108. data/lib/facter/resolvers/ssh_resolver.rb +8 -5
  109. data/lib/facter/resolvers/suse_release_resolver.rb +1 -1
  110. data/lib/facter/resolvers/sw_vers_resolver.rb +2 -2
  111. data/lib/facter/resolvers/timezone_resolver.rb +1 -1
  112. data/lib/facter/resolvers/uname_resolver.rb +1 -1
  113. data/lib/facter/resolvers/uptime_resolver.rb +1 -1
  114. data/lib/facter/resolvers/utils/networking.rb +2 -0
  115. data/lib/facter/resolvers/virt_what.rb +1 -1
  116. data/lib/facter/resolvers/vmware.rb +1 -1
  117. data/lib/facter/resolvers/windows/aio_agent_version.rb +1 -1
  118. data/lib/facter/resolvers/windows/dmi_bios_resolver.rb +1 -1
  119. data/lib/facter/resolvers/windows/dmi_computersystem_resolver.rb +1 -1
  120. data/lib/facter/resolvers/windows/fips_resolver.rb +2 -1
  121. data/lib/facter/resolvers/windows/hardware_architecture_resolver.rb +2 -1
  122. data/lib/facter/resolvers/windows/identity_resolver.rb +2 -1
  123. data/lib/facter/resolvers/windows/kernel_resolver.rb +3 -1
  124. data/lib/facter/resolvers/windows/memory_resolver.rb +3 -1
  125. data/lib/facter/resolvers/windows/netkvm_resolver.rb +2 -1
  126. data/lib/facter/resolvers/windows/networking_resolver.rb +2 -1
  127. data/lib/facter/resolvers/windows/processors_resolver.rb +2 -1
  128. data/lib/facter/resolvers/windows/product_release_resolver.rb +2 -1
  129. data/lib/facter/resolvers/windows/ssh.rb +3 -1
  130. data/lib/facter/resolvers/windows/system32_resolver.rb +3 -1
  131. data/lib/facter/resolvers/windows/uptime_resolver.rb +2 -1
  132. data/lib/facter/resolvers/windows/virtualization_resolver.rb +2 -1
  133. data/lib/facter/resolvers/windows/win_os_description_resolver.rb +3 -1
  134. data/lib/facter/resolvers/wpar_resolver.rb +1 -1
  135. data/lib/facter/resolvers/xen.rb +1 -1
  136. data/lib/facter/resolvers/zfs.rb +2 -1
  137. data/lib/facter/resolvers/zpool.rb +2 -1
  138. data/lib/facter/version.rb +1 -1
  139. metadata +7 -5
  140. data/lib/facter/fact_groups.conf +0 -308
  141. data/lib/facter/os_hierarchy.json +0 -36
@@ -5,9 +5,12 @@ module Facter
5
5
  module Linux
6
6
  class Disk < BaseResolver
7
7
  @log = Facter::Log.new(self)
8
- @fact_list ||= {}
8
+
9
+ init_resolver
10
+
9
11
  DIR = '/sys/block'
10
- FILE_PATHS = { model: 'device/model', size: 'size', vendor: 'device/vendor' }.freeze
12
+ FILE_PATHS = { model: 'device/model', size: 'size', vendor: 'device/vendor', type: 'queue/rotational' }.freeze
13
+
11
14
  class << self
12
15
  private
13
16
 
@@ -25,8 +28,16 @@ module Facter
25
28
  result = Util::FileHelper.safe_read(file_path).strip
26
29
  next if result.empty?
27
30
 
28
- # Linux always considers sectors to be 512 bytes long independently of the devices real block size.
29
- value[key] = file =~ /size/ ? construct_size(value, result) : result
31
+ value[key] = case key
32
+ when :size
33
+ # Linux always considers sectors to be 512 bytes long
34
+ # independently of the devices real block size.
35
+ construct_size(value, result)
36
+ when :type
37
+ result == '0' ? 'ssd' : 'hdd'
38
+ else
39
+ result
40
+ end
30
41
  end
31
42
  end
32
43
 
@@ -3,7 +3,7 @@
3
3
  module Facter
4
4
  module Resolvers
5
5
  class DmiDecode < BaseResolver
6
- @fact_list ||= {}
6
+ init_resolver
7
7
 
8
8
  ADDRESS_TO_VERSION = {
9
9
  0xe8480 => 'ESXi 2.5',
@@ -37,6 +37,7 @@ module Facter
37
37
  @fact_list[:virtualbox_version] = output.match(/vboxVer_(\S+)/)&.captures&.first
38
38
  @fact_list[:virtualbox_revision] = output.match(/vboxRev_(\S+)/)&.captures&.first
39
39
  @fact_list[:vmware_version] = extract_vmware_version(output)
40
+ @fact_list[:vendor] = output.match(/Vendor: (\S+)/)&.captures&.first
40
41
 
41
42
  @fact_list[fact_name]
42
43
  end
@@ -5,7 +5,8 @@ module Facter
5
5
  module Linux
6
6
  class DmiBios < BaseResolver
7
7
  @log = Facter::Log.new(self)
8
- @fact_list ||= {}
8
+
9
+ init_resolver
9
10
 
10
11
  class << self
11
12
  # :bios_vendor
@@ -36,9 +37,9 @@ module Facter
36
37
 
37
38
  file_content = Util::FileHelper.safe_read("/sys/class/dmi/id/#{fact_name}", nil)
38
39
  if files.include?(fact_name.to_s) && file_content
39
- @fact_list[fact_name] = file_content.strip
40
+ file_content = file_content.strip
41
+ @fact_list[fact_name] = file_content unless file_content.empty?
40
42
  chassis_to_name(@fact_list[fact_name]) if fact_name == :chassis_type
41
-
42
43
  end
43
44
  @fact_list[fact_name]
44
45
  end
@@ -3,7 +3,8 @@
3
3
  module Facter
4
4
  module Resolvers
5
5
  class Ec2 < BaseResolver
6
- @fact_list ||= {}
6
+ init_resolver
7
+
7
8
  EC2_METADATA_ROOT_URL = 'http://169.254.169.254/latest/meta-data/'
8
9
  EC2_USERDATA_ROOT_URL = 'http://169.254.169.254/latest/user-data/'
9
10
  EC2_SESSION_TIMEOUT = 5
@@ -7,7 +7,7 @@ module Facter
7
7
  # :version
8
8
  # :codename
9
9
 
10
- @fact_list ||= {}
10
+ init_resolver
11
11
 
12
12
  class << self
13
13
  private
@@ -3,7 +3,7 @@
3
3
  module Facter
4
4
  module Resolvers
5
5
  class Facterversion < BaseResolver
6
- @fact_list ||= {}
6
+ init_resolver
7
7
 
8
8
  class << self
9
9
  private
@@ -5,8 +5,11 @@ module Facter
5
5
  module Linux
6
6
  class Filesystems < BaseResolver
7
7
  # :systems
8
- @fact_list ||= {}
8
+
9
+ init_resolver
10
+
9
11
  @log = Facter::Log.new(self)
12
+
10
13
  class << self
11
14
  private
12
15
 
@@ -5,8 +5,11 @@ module Facter
5
5
  module Linux
6
6
  class FipsEnabled < BaseResolver
7
7
  #:fips_enabled
8
- @fact_list ||= {}
8
+
9
+ init_resolver
10
+
9
11
  @log = Facter::Log.new(self)
12
+
10
13
  class << self
11
14
  private
12
15
 
@@ -4,7 +4,7 @@ module Facter
4
4
  module Resolvers
5
5
  module Freebsd
6
6
  class DmiBios < BaseResolver
7
- @fact_list ||= {}
7
+ init_resolver
8
8
 
9
9
  class << self
10
10
  #:model
@@ -4,7 +4,7 @@ module Facter
4
4
  module Resolvers
5
5
  module Freebsd
6
6
  class FreebsdVersion < BaseResolver
7
- @fact_list ||= {}
7
+ init_resolver
8
8
 
9
9
  class << self
10
10
  private
@@ -14,10 +14,13 @@ module Facter
14
14
  end
15
15
 
16
16
  def freebsd_version_system_call(fact_name)
17
- output = Facter::Core::Execution.execute('/bin/freebsd-version -kru', logger: log)
18
- return if output.empty?
17
+ output = Facter::Core::Execution.execute('/bin/freebsd-version -k', logger: log)
19
18
 
20
- build_fact_list(output)
19
+ @fact_list[:installed_kernel] = output.strip unless output.empty?
20
+
21
+ output = Facter::Core::Execution.execute('/bin/freebsd-version -ru', logger: log)
22
+
23
+ build_fact_list(output) unless output.empty?
21
24
 
22
25
  @fact_list[fact_name]
23
26
  end
@@ -25,9 +28,8 @@ module Facter
25
28
  def build_fact_list(output)
26
29
  freebsd_version_results = output.split("\n")
27
30
 
28
- @fact_list[:installed_kernel] = freebsd_version_results[0].strip
29
- @fact_list[:running_kernel] = freebsd_version_results[1].strip
30
- @fact_list[:installed_userland] = freebsd_version_results[2].strip
31
+ @fact_list[:running_kernel] = freebsd_version_results[0].strip
32
+ @fact_list[:installed_userland] = freebsd_version_results[1].strip
31
33
  end
32
34
  end
33
35
  end
@@ -4,7 +4,10 @@ module Facter
4
4
  module Resolvers
5
5
  module Freebsd
6
6
  class Geom < BaseResolver
7
- @fact_list ||= {}
7
+ init_resolver
8
+
9
+ DISKS_ATTRIBUTES = %i[read_model read_serial_number read_size].freeze
10
+ PARTITIONS_ATTRIBUTES = %i[read_partlabel read_partuuid read_size].freeze
8
11
 
9
12
  class << self
10
13
  private
@@ -17,37 +20,27 @@ module Facter
17
20
  require_relative 'ffi/ffi_helper'
18
21
  require 'rexml/document'
19
22
 
20
- read_disks
21
- read_partitions
23
+ topology = geom_topology
24
+ read_data('DISK', topology, DISKS_ATTRIBUTES)
25
+ read_data('PART', topology, PARTITIONS_ATTRIBUTES)
22
26
 
23
27
  @fact_list[fact_name]
24
28
  end
25
29
 
26
- def read_disks
27
- @fact_list[:disks] = {}
28
-
29
- each_geom_class_provider('DISK') do |provider|
30
- name = provider.get_text('./name').value
31
-
32
- @fact_list[:disks][name] = %i[read_model read_serial_number read_size].map do |x|
33
- send(x, provider)
34
- end.inject(:merge)
35
- end
36
- end
37
-
38
- def read_partitions
39
- @fact_list[:partitions] = {}
30
+ def read_data(fact_name, geom_topology, data_to_read)
31
+ fact_list_key = fact_name == 'DISK' ? :disks : :partitions
32
+ @fact_list[fact_list_key] = {}
40
33
 
41
- each_geom_class_provider('PART') do |provider|
34
+ each_geom_class_provider(fact_name, geom_topology) do |provider|
42
35
  name = provider.get_text('./name').value
43
36
 
44
- @fact_list[:partitions][name] = %i[read_partlabel read_partuuid read_size].map do |x|
37
+ @fact_list[fact_list_key][name] = data_to_read.map do |x|
45
38
  send(x, provider)
46
39
  end.inject(:merge)
47
40
  end
48
41
  end
49
42
 
50
- def each_geom_class_provider(geom_class_name, &block)
43
+ def each_geom_class_provider(geom_class_name, geom_topology, &block)
51
44
  REXML::XPath.each(geom_topology, "/mesh/class[name/text() = '#{geom_class_name}']/geom/provider", &block)
52
45
  end
53
46
 
@@ -95,7 +88,7 @@ module Facter
95
88
  end
96
89
 
97
90
  def geom_topology
98
- @geom_topology ||= REXML::Document.new(geom_confxml)
91
+ REXML::Document.new(geom_confxml)
99
92
  end
100
93
 
101
94
  def geom_confxml
@@ -6,8 +6,9 @@ module Facter
6
6
  module Resolvers
7
7
  module Freebsd
8
8
  class Processors < BaseResolver
9
+ init_resolver
9
10
  @log = Facter::Log.new(self)
10
- @fact_list ||= {}
11
+
11
12
  class << self
12
13
  private
13
14
 
@@ -18,23 +19,27 @@ module Facter
18
19
  def collect_processors_info(fact_name)
19
20
  require 'facter/resolvers/freebsd/ffi/ffi_helper'
20
21
 
21
- @fact_list[:logical_count] = logical_count
22
- @fact_list[:models] = Array.new(logical_count, model) if logical_count && model
22
+ count = logical_count
23
+ model = processors_model
24
+ speed = processors_speed
25
+
26
+ @fact_list[:logical_count] = count
27
+ @fact_list[:models] = Array.new(count, model) if logical_count && model
23
28
  @fact_list[:speed] = speed * 1000 * 1000 if speed
24
29
 
25
30
  @fact_list[fact_name]
26
31
  end
27
32
 
28
- def model
29
- @model ||= Facter::Freebsd::FfiHelper.sysctl_by_name(:string, 'hw.model')
33
+ def processors_model
34
+ Facter::Freebsd::FfiHelper.sysctl_by_name(:string, 'hw.model')
30
35
  end
31
36
 
32
37
  def logical_count
33
- @logical_count ||= Facter::Freebsd::FfiHelper.sysctl_by_name(:uint32_t, 'hw.ncpu')
38
+ Facter::Freebsd::FfiHelper.sysctl_by_name(:uint32_t, 'hw.ncpu')
34
39
  end
35
40
 
36
- def speed
37
- @speed ||= Facter::Freebsd::FfiHelper.sysctl_by_name(:uint32_t, 'hw.clockrate')
41
+ def processors_speed
42
+ Facter::Freebsd::FfiHelper.sysctl_by_name(:uint32_t, 'hw.clockrate')
38
43
  end
39
44
  end
40
45
  end
@@ -4,7 +4,8 @@ module Facter
4
4
  module Resolvers
5
5
  module Freebsd
6
6
  class SwapMemory < BaseResolver
7
- @fact_list ||= {}
7
+ init_resolver
8
+
8
9
  class << self
9
10
  private
10
11
 
@@ -4,7 +4,8 @@ module Facter
4
4
  module Resolvers
5
5
  module Freebsd
6
6
  class SystemMemory < BaseResolver
7
- @fact_list ||= {}
7
+ init_resolver
8
+
8
9
  class << self
9
10
  private
10
11
 
@@ -3,7 +3,8 @@
3
3
  module Facter
4
4
  module Resolvers
5
5
  class Gce < BaseResolver
6
- @fact_list ||= {}
6
+ init_resolver
7
+
7
8
  METADATA_URL = 'http://metadata.google.internal/computeMetadata/v1/?recursive=true&alt=json'
8
9
  HEADERS = { "Metadata-Flavor": 'Google', "Accept": 'application/json' }.freeze
9
10
 
@@ -3,7 +3,8 @@
3
3
  module Facter
4
4
  module Resolvers
5
5
  class Hostname < BaseResolver
6
- @fact_list ||= {}
6
+ init_resolver
7
+
7
8
  class << self
8
9
  private
9
10
 
@@ -4,7 +4,8 @@ module Facter
4
4
  module Resolvers
5
5
  class PosxIdentity < BaseResolver
6
6
  @log = Facter::Log.new(self)
7
- @fact_list ||= {}
7
+
8
+ init_resolver
8
9
 
9
10
  class << self
10
11
  private
@@ -4,7 +4,8 @@ module Facter
4
4
  module Resolvers
5
5
  module Linux
6
6
  class DockerUptime < BaseResolver
7
- @fact_list ||= {}
7
+ init_resolver
8
+
8
9
  class << self
9
10
  private
10
11
 
@@ -4,7 +4,8 @@ module Facter
4
4
  module Resolvers
5
5
  module Linux
6
6
  class LoadAverages < BaseResolver
7
- @fact_list ||= {}
7
+ init_resolver
8
+
8
9
  class << self
9
10
  private
10
11
 
@@ -3,7 +3,8 @@
3
3
  module Facter
4
4
  module Resolvers
5
5
  class LoadAverages < BaseResolver
6
- @fact_list ||= {}
6
+ init_resolver
7
+
7
8
  class << self
8
9
  private
9
10
 
@@ -3,7 +3,7 @@
3
3
  module Facter
4
4
  module Resolvers
5
5
  class Lpar < BaseResolver
6
- @fact_list ||= {}
6
+ init_resolver
7
7
 
8
8
  class << self
9
9
  private
@@ -9,7 +9,7 @@ module Facter
9
9
  # :release
10
10
  # :codename
11
11
 
12
- @fact_list ||= {}
12
+ init_resolver
13
13
 
14
14
  class << self
15
15
  private
@@ -3,7 +3,7 @@
3
3
  module Facter
4
4
  module Resolvers
5
5
  class Lspci < BaseResolver
6
- @fact_list ||= {}
6
+ init_resolver
7
7
 
8
8
  REGEX_VALUES = { 'VirtualBox' => 'virtualbox', 'XenSource' => 'xenhvm',
9
9
  'Microsoft Corporation Hyper-V' => 'hyperv', 'Class 8007: Google, Inc' => 'gce',
@@ -4,7 +4,7 @@ module Facter
4
4
  module Resolvers
5
5
  module Macosx
6
6
  class DmiBios < BaseResolver
7
- @fact_list ||= {}
7
+ init_resolver
8
8
 
9
9
  class << self
10
10
  #:model
@@ -5,7 +5,7 @@ module Facter
5
5
  module Macosx
6
6
  class Filesystems < BaseResolver
7
7
  # :macosx_filesystems
8
- @fact_list ||= {}
8
+ init_resolver
9
9
 
10
10
  class << self
11
11
  private
@@ -4,7 +4,8 @@ module Facter
4
4
  module Resolvers
5
5
  module Macosx
6
6
  class LoadAverages < BaseResolver
7
- @fact_list ||= {}
7
+ init_resolver
8
+
8
9
  class << self
9
10
  private
10
11
 
@@ -5,7 +5,8 @@ module Facter
5
5
  module Macosx
6
6
  class Mountpoints < BaseResolver
7
7
  include Facter::FilesystemHelper
8
- @fact_list ||= {}
8
+ init_resolver
9
+
9
10
  class << self
10
11
  private
11
12