facter 4.0.8.pre → 4.0.9.pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (424) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +1 -0
  3. data/.rubocop_todo.yml +564 -31
  4. data/.travis.yml +2 -2
  5. data/VERSION +1 -1
  6. data/agent/facter-ng.gemspec +1 -1
  7. data/facter.gemspec +1 -1
  8. data/lib/custom_facts/util/collection.rb +3 -7
  9. data/lib/custom_facts/util/fact.rb +6 -3
  10. data/lib/custom_facts/util/parser.rb +13 -2
  11. data/lib/facter.rb +131 -115
  12. data/lib/facts/aix/augeas/version.rb +8 -6
  13. data/lib/facts/aix/facterversion.rb +3 -3
  14. data/lib/facts/aix/hypervisors/lpar.rb +11 -9
  15. data/lib/facts/aix/hypervisors/wpar.rb +10 -7
  16. data/lib/facts/aix/kernel.rb +3 -3
  17. data/lib/facts/aix/kernelmajversion.rb +3 -3
  18. data/lib/facts/aix/kernelrelease.rb +2 -2
  19. data/lib/facts/aix/kernelversion.rb +3 -3
  20. data/lib/facts/aix/load_averages.rb +3 -3
  21. data/lib/facts/aix/networking/domain.rb +9 -7
  22. data/lib/facts/aix/networking/fqdn.rb +9 -7
  23. data/lib/facts/aix/networking/hostname.rb +9 -7
  24. data/lib/facts/aix/networking/ip.rb +9 -7
  25. data/lib/facts/aix/networking/primary.rb +8 -6
  26. data/lib/facts/aix/os/architecture.rb +9 -7
  27. data/lib/facts/aix/os/family.rb +9 -7
  28. data/lib/facts/aix/os/hardware.rb +8 -6
  29. data/lib/facts/aix/os/name.rb +9 -7
  30. data/lib/facts/aix/os/release.rb +12 -10
  31. data/lib/facts/aix/path.rb +3 -3
  32. data/lib/facts/aix/ruby/platform.rb +8 -6
  33. data/lib/facts/aix/ruby/sitedir.rb +8 -6
  34. data/lib/facts/aix/ruby/version.rb +9 -7
  35. data/lib/facts/aix/ssh.rb +3 -3
  36. data/lib/facts/debian/disks.rb +15 -0
  37. data/lib/facts/debian/dmi/bios/release_date.rb +18 -0
  38. data/lib/facts/debian/dmi/bios/vendor.rb +18 -0
  39. data/lib/facts/debian/dmi/bios/version.rb +18 -0
  40. data/lib/facts/debian/dmi/board/manufacturer.rb +18 -0
  41. data/lib/facts/debian/dmi/board/product.rb +18 -0
  42. data/lib/facts/debian/dmi/board/serial_number.rb +18 -0
  43. data/lib/facts/debian/dmi/chassis/asset_tag.rb +18 -0
  44. data/lib/facts/debian/dmi/chassis/type.rb +18 -0
  45. data/lib/facts/debian/dmi/manufacturer.rb +16 -0
  46. data/lib/facts/debian/dmi/product/name.rb +18 -0
  47. data/lib/facts/debian/dmi/product/serial_number.rb +18 -0
  48. data/lib/facts/debian/dmi/product/uuid.rb +18 -0
  49. data/lib/facts/debian/facterversion.rb +3 -3
  50. data/lib/facts/debian/filesystems.rb +14 -0
  51. data/lib/facts/debian/fips_enabled.rb +14 -0
  52. data/lib/facts/debian/kernel.rb +3 -3
  53. data/lib/facts/debian/kernelmajversion.rb +3 -3
  54. data/lib/facts/debian/kernelrelease.rb +3 -3
  55. data/lib/facts/debian/kernelversion.rb +3 -3
  56. data/lib/facts/debian/load_averages.rb +14 -0
  57. data/lib/facts/debian/memory/swap/available.rb +11 -7
  58. data/lib/facts/debian/memory/swap/available_bytes.rb +10 -6
  59. data/lib/facts/debian/memory/swap/capacity.rb +10 -6
  60. data/lib/facts/debian/memory/swap/total.rb +19 -0
  61. data/lib/facts/debian/memory/swap/total_bytes.rb +18 -0
  62. data/lib/facts/debian/memory/swap/used.rb +11 -7
  63. data/lib/facts/debian/memory/swap/used_bytes.rb +10 -6
  64. data/lib/facts/debian/memory/system/available.rb +19 -0
  65. data/lib/facts/debian/memory/system/available_bytes.rb +18 -0
  66. data/lib/facts/debian/memory/system/capacity.rb +18 -0
  67. data/lib/facts/debian/memory/system/total.rb +19 -0
  68. data/lib/facts/debian/memory/system/total_bytes.rb +18 -0
  69. data/lib/facts/debian/memory/system/used.rb +19 -0
  70. data/lib/facts/debian/memory/system/used_bytes.rb +18 -0
  71. data/lib/facts/debian/mountpoints.rb +21 -0
  72. data/lib/facts/debian/networking/domain.rb +9 -7
  73. data/lib/facts/debian/networking/fqdn.rb +9 -7
  74. data/lib/facts/debian/networking/hostname.rb +9 -7
  75. data/lib/facts/debian/networking/interfaces.rb +8 -6
  76. data/lib/facts/debian/networking/ip.rb +9 -7
  77. data/lib/facts/debian/networking/primary.rb +8 -6
  78. data/lib/facts/debian/os/architecture.rb +10 -8
  79. data/lib/facts/debian/os/distro.rb +20 -18
  80. data/lib/facts/debian/os/family.rb +11 -8
  81. data/lib/facts/debian/os/hardware.rb +8 -6
  82. data/lib/facts/debian/os/name.rb +9 -7
  83. data/lib/facts/debian/os/release.rb +17 -15
  84. data/lib/facts/debian/os/selinux.rb +13 -11
  85. data/lib/facts/debian/path.rb +2 -2
  86. data/lib/facts/debian/processors/count.rb +16 -0
  87. data/lib/facts/debian/processors/isa.rb +25 -0
  88. data/lib/facts/debian/processors/models.rb +16 -0
  89. data/lib/facts/debian/processors/physicalcount.rb +16 -0
  90. data/lib/facts/debian/ruby/platform.rb +8 -6
  91. data/lib/facts/debian/ruby/sitedir.rb +8 -6
  92. data/lib/facts/debian/ruby/version.rb +9 -7
  93. data/lib/facts/debian/ssh.rb +26 -0
  94. data/lib/facts/debian/system_uptime/days.rb +17 -0
  95. data/lib/facts/debian/system_uptime/hours.rb +17 -0
  96. data/lib/facts/debian/system_uptime/minutes.rb +17 -0
  97. data/lib/facts/debian/system_uptime/uptime.rb +17 -0
  98. data/lib/facts/debian/timezone.rb +2 -2
  99. data/lib/facts/el/disks.rb +3 -3
  100. data/lib/facts/el/dmi/bios/release_date.rb +10 -6
  101. data/lib/facts/el/dmi/bios/vendor.rb +10 -6
  102. data/lib/facts/el/dmi/bios/version.rb +10 -6
  103. data/lib/facts/el/dmi/board/manufacturer.rb +10 -6
  104. data/lib/facts/el/dmi/board/product.rb +10 -6
  105. data/lib/facts/el/dmi/board/serial_number.rb +10 -6
  106. data/lib/facts/el/dmi/chassis/asset_tag.rb +10 -6
  107. data/lib/facts/el/dmi/chassis/type.rb +10 -6
  108. data/lib/facts/el/dmi/manufacturer.rb +8 -6
  109. data/lib/facts/el/dmi/product/name.rb +10 -6
  110. data/lib/facts/el/dmi/product/serial_number.rb +10 -6
  111. data/lib/facts/el/dmi/product/uuid.rb +10 -6
  112. data/lib/facts/el/facterversion.rb +3 -3
  113. data/lib/facts/el/filesystems.rb +3 -3
  114. data/lib/facts/el/fips_enabled.rb +3 -3
  115. data/lib/facts/el/kernel.rb +3 -3
  116. data/lib/facts/el/kernelmajversion.rb +3 -3
  117. data/lib/facts/el/kernelrelease.rb +3 -3
  118. data/lib/facts/el/kernelversion.rb +3 -3
  119. data/lib/facts/el/load_averages.rb +3 -3
  120. data/lib/facts/el/memory/swap/available.rb +11 -7
  121. data/lib/facts/el/memory/swap/available_bytes.rb +10 -6
  122. data/lib/facts/el/memory/swap/capacity.rb +10 -6
  123. data/lib/facts/el/memory/swap/total.rb +11 -7
  124. data/lib/facts/el/memory/swap/total_bytes.rb +10 -6
  125. data/lib/facts/el/memory/swap/used.rb +11 -7
  126. data/lib/facts/el/memory/swap/used_bytes.rb +10 -6
  127. data/lib/facts/el/memory/system/available.rb +11 -7
  128. data/lib/facts/el/memory/system/available_bytes.rb +10 -6
  129. data/lib/facts/el/memory/system/capacity.rb +10 -6
  130. data/lib/facts/el/memory/system/total.rb +11 -7
  131. data/lib/facts/el/memory/system/total_bytes.rb +10 -6
  132. data/lib/facts/el/memory/system/used.rb +11 -7
  133. data/lib/facts/el/memory/system/used_bytes.rb +10 -6
  134. data/lib/facts/el/mountpoints.rb +4 -4
  135. data/lib/facts/el/networking/domain.rb +9 -7
  136. data/lib/facts/el/networking/fqdn.rb +9 -7
  137. data/lib/facts/el/networking/hostname.rb +9 -7
  138. data/lib/facts/el/networking/interfaces.rb +8 -6
  139. data/lib/facts/el/networking/ip.rb +9 -7
  140. data/lib/facts/el/networking/primary.rb +8 -6
  141. data/lib/facts/el/os/architecture.rb +9 -7
  142. data/lib/facts/el/os/family.rb +8 -6
  143. data/lib/facts/el/os/hardware.rb +8 -6
  144. data/lib/facts/el/os/name.rb +10 -8
  145. data/lib/facts/el/os/release.rb +11 -9
  146. data/lib/facts/el/os/selinux.rb +13 -11
  147. data/lib/facts/el/path.rb +3 -3
  148. data/lib/facts/el/processors/count.rb +8 -6
  149. data/lib/facts/el/processors/isa.rb +13 -11
  150. data/lib/facts/el/processors/models.rb +8 -6
  151. data/lib/facts/el/processors/physicalcount.rb +8 -6
  152. data/lib/facts/el/ruby/platform.rb +8 -6
  153. data/lib/facts/el/ruby/sitedir.rb +8 -6
  154. data/lib/facts/el/ruby/version.rb +9 -7
  155. data/lib/facts/el/ssh.rb +3 -3
  156. data/lib/facts/el/system_uptime/days.rb +8 -6
  157. data/lib/facts/el/system_uptime/hours.rb +8 -6
  158. data/lib/facts/el/system_uptime/seconds.rb +8 -6
  159. data/lib/facts/el/system_uptime/uptime.rb +8 -6
  160. data/lib/facts/el/timezone.rb +3 -3
  161. data/lib/facts/macosx/augeas.rb +3 -3
  162. data/lib/facts/macosx/dmi/product/name.rb +10 -6
  163. data/lib/facts/macosx/facterversion.rb +3 -3
  164. data/lib/facts/macosx/filesystems.rb +3 -3
  165. data/lib/facts/macosx/identity/gid.rb +8 -6
  166. data/lib/facts/macosx/identity/group.rb +8 -6
  167. data/lib/facts/macosx/identity/privileged.rb +8 -6
  168. data/lib/facts/macosx/identity/uid.rb +8 -6
  169. data/lib/facts/macosx/identity/user.rb +8 -6
  170. data/lib/facts/macosx/is_virtual.rb +2 -2
  171. data/lib/facts/macosx/kernel.rb +3 -3
  172. data/lib/facts/macosx/kernelmajversion.rb +3 -3
  173. data/lib/facts/macosx/kernelrelease.rb +3 -3
  174. data/lib/facts/macosx/kernelversion.rb +3 -3
  175. data/lib/facts/macosx/load_averages.rb +3 -3
  176. data/lib/facts/macosx/memory/swap/available.rb +11 -7
  177. data/lib/facts/macosx/memory/swap/available_bytes.rb +10 -6
  178. data/lib/facts/macosx/memory/swap/capacity.rb +10 -6
  179. data/lib/facts/macosx/memory/swap/encrypted.rb +10 -6
  180. data/lib/facts/macosx/memory/swap/total.rb +11 -7
  181. data/lib/facts/macosx/memory/swap/total_bytes.rb +10 -6
  182. data/lib/facts/macosx/memory/swap/used.rb +11 -7
  183. data/lib/facts/macosx/memory/swap/used_bytes.rb +10 -6
  184. data/lib/facts/macosx/memory/system/available.rb +11 -7
  185. data/lib/facts/macosx/memory/system/available_bytes.rb +10 -6
  186. data/lib/facts/macosx/memory/system/capacity.rb +10 -6
  187. data/lib/facts/macosx/memory/system/total.rb +11 -7
  188. data/lib/facts/macosx/memory/system/total_bytes.rb +10 -6
  189. data/lib/facts/macosx/memory/system/used.rb +11 -7
  190. data/lib/facts/macosx/memory/system/used_bytes.rb +10 -6
  191. data/lib/facts/macosx/mountpoints.rb +4 -4
  192. data/lib/facts/macosx/networking/domain.rb +9 -7
  193. data/lib/facts/macosx/networking/fqdn.rb +9 -7
  194. data/lib/facts/macosx/networking/hostname.rb +9 -7
  195. data/lib/facts/macosx/networking/ip.rb +18 -0
  196. data/lib/facts/macosx/os/architecture.rb +9 -7
  197. data/lib/facts/macosx/os/family.rb +9 -7
  198. data/lib/facts/macosx/os/hardware.rb +8 -6
  199. data/lib/facts/macosx/os/macosx/build.rb +19 -0
  200. data/lib/facts/macosx/os/macosx/product.rb +19 -0
  201. data/lib/facts/macosx/os/macosx/version.rb +21 -0
  202. data/lib/facts/macosx/os/name.rb +9 -7
  203. data/lib/facts/macosx/os/release.rb +12 -10
  204. data/lib/facts/macosx/path.rb +3 -3
  205. data/lib/facts/macosx/processors/count.rb +16 -0
  206. data/lib/facts/macosx/processors/isa.rb +16 -0
  207. data/lib/facts/macosx/processors/models.rb +16 -0
  208. data/lib/facts/macosx/processors/physicalcount.rb +16 -0
  209. data/lib/facts/macosx/processors/speed.rb +16 -0
  210. data/lib/facts/macosx/ruby/platform.rb +8 -6
  211. data/lib/facts/macosx/ruby/sitedir.rb +8 -6
  212. data/lib/facts/macosx/ruby/version.rb +9 -7
  213. data/lib/facts/macosx/system_profiler/boot_mode.rb +8 -6
  214. data/lib/facts/macosx/system_profiler/boot_rom_version.rb +8 -6
  215. data/lib/facts/macosx/system_profiler/boot_volume.rb +8 -6
  216. data/lib/facts/macosx/system_profiler/computer_name.rb +8 -6
  217. data/lib/facts/macosx/system_profiler/cores.rb +8 -6
  218. data/lib/facts/macosx/system_profiler/hardware_uuid.rb +8 -6
  219. data/lib/facts/macosx/system_profiler/kernel_version.rb +8 -6
  220. data/lib/facts/macosx/system_profiler/l2_cache_per_core.rb +8 -6
  221. data/lib/facts/macosx/system_profiler/l3_cache.rb +8 -6
  222. data/lib/facts/macosx/system_profiler/memory.rb +8 -6
  223. data/lib/facts/macosx/system_profiler/model_identifier.rb +8 -6
  224. data/lib/facts/macosx/system_profiler/model_name.rb +8 -6
  225. data/lib/facts/macosx/system_profiler/processor_name.rb +8 -6
  226. data/lib/facts/macosx/system_profiler/processor_speed.rb +8 -6
  227. data/lib/facts/macosx/system_profiler/processors.rb +8 -6
  228. data/lib/facts/macosx/system_profiler/secure_virtual_memory.rb +8 -6
  229. data/lib/facts/macosx/system_profiler/serial_number.rb +8 -6
  230. data/lib/facts/macosx/system_profiler/smc_version.rb +8 -6
  231. data/lib/facts/macosx/system_profiler/system_version.rb +8 -6
  232. data/lib/facts/macosx/system_profiler/uptime.rb +8 -6
  233. data/lib/facts/macosx/system_profiler/username.rb +8 -6
  234. data/lib/facts/macosx/system_uptime/days.rb +16 -0
  235. data/lib/facts/macosx/system_uptime/hours.rb +16 -0
  236. data/lib/facts/macosx/system_uptime/seconds.rb +8 -6
  237. data/lib/facts/macosx/system_uptime/uptime.rb +8 -6
  238. data/lib/facts/macosx/timezone.rb +2 -2
  239. data/lib/facts/sles/facterversion.rb +3 -3
  240. data/lib/facts/sles/kernel.rb +3 -3
  241. data/lib/facts/sles/kernelmajversion.rb +3 -3
  242. data/lib/facts/sles/kernelrelease.rb +3 -3
  243. data/lib/facts/sles/kernelversion.rb +3 -3
  244. data/lib/facts/sles/memory/swap/available.rb +11 -7
  245. data/lib/facts/sles/memory/swap/available_bytes.rb +10 -6
  246. data/lib/facts/sles/memory/swap/capacity.rb +10 -6
  247. data/lib/facts/sles/memory/swap/total.rb +11 -7
  248. data/lib/facts/sles/memory/swap/total_bytes.rb +10 -6
  249. data/lib/facts/sles/memory/swap/used.rb +11 -7
  250. data/lib/facts/sles/memory/swap/used_bytes.rb +10 -6
  251. data/lib/facts/sles/memory/system/available.rb +11 -7
  252. data/lib/facts/sles/memory/system/available_bytes.rb +10 -6
  253. data/lib/facts/sles/memory/system/capacity.rb +10 -6
  254. data/lib/facts/sles/memory/system/total.rb +11 -7
  255. data/lib/facts/sles/memory/system/total_bytes.rb +10 -6
  256. data/lib/facts/sles/memory/system/used.rb +11 -7
  257. data/lib/facts/sles/memory/system/used_bytes.rb +10 -6
  258. data/lib/facts/sles/networking/domain.rb +9 -7
  259. data/lib/facts/sles/networking/fqdn.rb +9 -7
  260. data/lib/facts/sles/networking/hostname.rb +9 -7
  261. data/lib/facts/sles/networking/interfaces.rb +8 -6
  262. data/lib/facts/sles/networking/ip.rb +9 -7
  263. data/lib/facts/sles/networking/primary.rb +8 -6
  264. data/lib/facts/sles/os/architecture.rb +9 -7
  265. data/lib/facts/sles/os/family.rb +8 -6
  266. data/lib/facts/sles/os/hardware.rb +8 -6
  267. data/lib/facts/sles/os/name.rb +9 -7
  268. data/lib/facts/sles/os/release.rb +19 -17
  269. data/lib/facts/sles/os/selinux.rb +13 -11
  270. data/lib/facts/sles/path.rb +3 -3
  271. data/lib/facts/sles/ruby/platform.rb +8 -6
  272. data/lib/facts/sles/ruby/sitedir.rb +8 -6
  273. data/lib/facts/sles/ruby/version.rb +9 -7
  274. data/lib/facts/sles/ssh.rb +3 -3
  275. data/lib/facts/sles/timezone.rb +3 -3
  276. data/lib/facts/solaris/facterversion.rb +3 -3
  277. data/lib/facts/solaris/kernel.rb +3 -3
  278. data/lib/facts/solaris/kernelmajversion.rb +3 -3
  279. data/lib/facts/solaris/kernelrelease.rb +3 -3
  280. data/lib/facts/solaris/kernelversion.rb +3 -3
  281. data/lib/facts/solaris/networking/domain.rb +9 -7
  282. data/lib/facts/solaris/networking/fqdn.rb +9 -7
  283. data/lib/facts/solaris/networking/hostname.rb +9 -7
  284. data/lib/facts/solaris/networking/ip.rb +18 -0
  285. data/lib/facts/solaris/os/architecture.rb +9 -7
  286. data/lib/facts/solaris/os/family.rb +8 -6
  287. data/lib/facts/solaris/os/hardware.rb +8 -6
  288. data/lib/facts/solaris/os/name.rb +10 -8
  289. data/lib/facts/solaris/os/release.rb +13 -11
  290. data/lib/facts/solaris/path.rb +3 -3
  291. data/lib/facts/solaris/ruby/platform.rb +8 -6
  292. data/lib/facts/solaris/ruby/sitedir.rb +8 -6
  293. data/lib/facts/solaris/ruby/version.rb +9 -7
  294. data/lib/facts/solaris/solaris_zones/current.rb +8 -6
  295. data/lib/facts/solaris/solaris_zones/zone.rb +18 -16
  296. data/lib/facts/solaris/zfs_featurenumbers.rb +4 -4
  297. data/lib/facts/solaris/zfs_version.rb +4 -4
  298. data/lib/facts/solaris/zpool_featurenumbers.rb +4 -4
  299. data/lib/facts/solaris/zpool_version.rb +4 -4
  300. data/lib/facts/windows/dhcp_servers.rb +4 -4
  301. data/lib/facts/windows/dmi/manufacturer.rb +9 -7
  302. data/lib/facts/windows/dmi/product/name.rb +11 -7
  303. data/lib/facts/windows/dmi/product/serial_number.rb +11 -7
  304. data/lib/facts/windows/dmi/product/uuid.rb +11 -7
  305. data/lib/facts/windows/facterversion.rb +3 -3
  306. data/lib/facts/windows/fips_enabled.rb +3 -3
  307. data/lib/facts/windows/hypervisors/hyperv.rb +13 -11
  308. data/lib/facts/windows/hypervisors/kvm.rb +20 -18
  309. data/lib/facts/windows/hypervisors/virtualbox.rb +22 -20
  310. data/lib/facts/windows/hypervisors/vmware.rb +13 -11
  311. data/lib/facts/windows/hypervisors/xen.rb +12 -10
  312. data/lib/facts/windows/identity/privileged.rb +8 -6
  313. data/lib/facts/windows/identity/user.rb +9 -7
  314. data/lib/facts/windows/interfaces.rb +3 -3
  315. data/lib/facts/windows/ipaddress6_interfaces.rb +3 -3
  316. data/lib/facts/windows/ipaddress_interfaces.rb +3 -3
  317. data/lib/facts/windows/{kernel/kernel.rb → kernel.rb} +3 -3
  318. data/lib/facts/windows/kernelmajversion.rb +15 -0
  319. data/lib/facts/windows/kernelrelease.rb +15 -0
  320. data/lib/facts/windows/kernelversion.rb +15 -0
  321. data/lib/facts/windows/macaddress_interfaces.rb +3 -3
  322. data/lib/facts/windows/memory/system/available.rb +12 -8
  323. data/lib/facts/windows/memory/system/available_bytes.rb +12 -8
  324. data/lib/facts/windows/memory/system/capacity.rb +10 -6
  325. data/lib/facts/windows/memory/system/total.rb +12 -8
  326. data/lib/facts/windows/memory/system/total_bytes.rb +12 -8
  327. data/lib/facts/windows/memory/system/used.rb +11 -7
  328. data/lib/facts/windows/memory/system/used_bytes.rb +10 -6
  329. data/lib/facts/windows/mtu_interfaces.rb +3 -3
  330. data/lib/facts/windows/netmask6_interfaces.rb +3 -3
  331. data/lib/facts/windows/netmask_interfaces.rb +3 -3
  332. data/lib/facts/windows/network6_interfaces.rb +3 -3
  333. data/lib/facts/windows/network_interfaces.rb +3 -3
  334. data/lib/facts/windows/networking/dhcp.rb +8 -6
  335. data/lib/facts/windows/networking/domain.rb +9 -7
  336. data/lib/facts/windows/networking/fqdn.rb +12 -10
  337. data/lib/facts/windows/networking/hostname.rb +9 -7
  338. data/lib/facts/windows/networking/interfaces.rb +8 -6
  339. data/lib/facts/windows/networking/ip.rb +9 -7
  340. data/lib/facts/windows/networking/ip6.rb +9 -7
  341. data/lib/facts/windows/networking/mac.rb +9 -7
  342. data/lib/facts/windows/networking/mtu.rb +8 -6
  343. data/lib/facts/windows/networking/netmask.rb +9 -7
  344. data/lib/facts/windows/networking/netmask6.rb +9 -7
  345. data/lib/facts/windows/networking/network.rb +9 -7
  346. data/lib/facts/windows/networking/network6.rb +9 -7
  347. data/lib/facts/windows/networking/primary.rb +8 -6
  348. data/lib/facts/windows/networking/scope6.rb +8 -6
  349. data/lib/facts/windows/os/architecture.rb +9 -7
  350. data/lib/facts/windows/os/family.rb +9 -7
  351. data/lib/facts/windows/os/hardware.rb +9 -7
  352. data/lib/facts/windows/os/name.rb +9 -7
  353. data/lib/facts/windows/os/release.rb +24 -22
  354. data/lib/facts/windows/os/windows/edition_id.rb +11 -7
  355. data/lib/facts/windows/os/windows/installation_type.rb +11 -7
  356. data/lib/facts/windows/os/windows/product_name.rb +11 -7
  357. data/lib/facts/windows/os/windows/release_id.rb +11 -7
  358. data/lib/facts/windows/os/windows/system32.rb +11 -7
  359. data/lib/facts/windows/path.rb +3 -3
  360. data/lib/facts/windows/processor.rb +3 -3
  361. data/lib/facts/windows/processors/count.rb +9 -7
  362. data/lib/facts/windows/processors/isa.rb +9 -7
  363. data/lib/facts/windows/processors/models.rb +8 -6
  364. data/lib/facts/windows/processors/physicalcount.rb +9 -7
  365. data/lib/facts/windows/ruby/platform.rb +9 -7
  366. data/lib/facts/windows/ruby/sitedir.rb +9 -7
  367. data/lib/facts/windows/ruby/version.rb +9 -7
  368. data/lib/facts/windows/scope6_interfaces.rb +3 -3
  369. data/lib/facts/windows/system_uptime/days.rb +18 -0
  370. data/lib/facts/windows/system_uptime/hours.rb +18 -0
  371. data/lib/facts/windows/system_uptime/seconds.rb +18 -0
  372. data/lib/facts/windows/system_uptime/uptime.rb +18 -0
  373. data/lib/facts/windows/timezone.rb +3 -3
  374. data/lib/facts/windows/virtualization/is_virtual.rb +8 -6
  375. data/lib/facts/windows/virtualization/virtual.rb +8 -6
  376. data/lib/framework/cli/cli_launcher.rb +3 -0
  377. data/lib/framework/config/block_list.rb +1 -1
  378. data/lib/framework/core/fact_filter.rb +0 -9
  379. data/lib/framework/core/fact_loaders/class_discoverer.rb +13 -2
  380. data/lib/framework/core/fact_loaders/internal_fact_loader.rb +5 -8
  381. data/lib/framework/core/fact_manager.rb +1 -3
  382. data/lib/framework/core/file_loader.rb +0 -2
  383. data/lib/framework/core/options.rb +2 -2
  384. data/lib/framework/core/options/default_options.rb +1 -0
  385. data/lib/framework/core/options/helper_options.rb +18 -6
  386. data/lib/framework/core/options/options_validator.rb +1 -0
  387. data/lib/framework/core/options/validate_options.rb +5 -3
  388. data/lib/framework/formatters/formatter_helper.rb +1 -1
  389. data/lib/framework/logging/logger.rb +38 -13
  390. data/lib/framework/logging/multilogger.rb +4 -0
  391. data/lib/framework/parsers/query_parser.rb +1 -1
  392. data/lib/framework/utils/utils.rb +13 -0
  393. data/lib/models/resolved_fact.rb +1 -1
  394. data/lib/models/searched_fact.rb +1 -1
  395. data/lib/resolvers/base_resolver.rb +1 -1
  396. data/lib/resolvers/fips_enabled_resolver.rb +2 -0
  397. data/lib/{facts → resolvers}/macosx/processor_resolver.rb +0 -0
  398. metadata +62 -34
  399. data/lib/facts/base/network_interface.rb +0 -9
  400. data/lib/facts/debian/system_uptime/system_uptime_days.rb +0 -15
  401. data/lib/facts/debian/system_uptime/system_uptime_hours.rb +0 -15
  402. data/lib/facts/debian/system_uptime/system_uptime_minutes.rb +0 -15
  403. data/lib/facts/debian/system_uptime/system_uptime_uptime.rb +0 -15
  404. data/lib/facts/macosx/count.rb +0 -14
  405. data/lib/facts/macosx/isa.rb +0 -14
  406. data/lib/facts/macosx/models.rb +0 -14
  407. data/lib/facts/macosx/network_ip.rb +0 -13
  408. data/lib/facts/macosx/networking/ipaddress.rb +0 -14
  409. data/lib/facts/macosx/os/sw_vers/build.rb +0 -15
  410. data/lib/facts/macosx/os/sw_vers/product.rb +0 -15
  411. data/lib/facts/macosx/os/sw_vers/version.rb +0 -17
  412. data/lib/facts/macosx/physicalcount.rb +0 -14
  413. data/lib/facts/macosx/speed.rb +0 -14
  414. data/lib/facts/macosx/system_uptime/system_uptime_days.rb +0 -14
  415. data/lib/facts/macosx/system_uptime/system_uptime_hours.rb +0 -14
  416. data/lib/facts/solaris/networking/ipaddress.rb +0 -14
  417. data/lib/facts/windows/kernel/kernel_maj_version.rb +0 -15
  418. data/lib/facts/windows/kernel/kernel_release.rb +0 -15
  419. data/lib/facts/windows/kernel/kernel_version.rb +0 -15
  420. data/lib/facts/windows/system_uptime/system_uptime_days.rb +0 -16
  421. data/lib/facts/windows/system_uptime/system_uptime_hours.rb +0 -16
  422. data/lib/facts/windows/system_uptime/system_uptime_seconds.rb +0 -16
  423. data/lib/facts/windows/system_uptime/system_uptime_uptime.rb +0 -16
  424. data/lib/framework/logging/legacy_logger.rb +0 -31
@@ -1,13 +1,15 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Facter
3
+ module Facts
4
4
  module Solaris
5
- class SolarisZonesCurrent
6
- FACT_NAME = 'solaris_zones.current'
5
+ module SolarisZones
6
+ class Current
7
+ FACT_NAME = 'solaris_zones.current'
7
8
 
8
- def call_the_resolver
9
- fact_value = Resolvers::SolarisZoneName.resolve(:current_zone_name)
10
- ResolvedFact.new(FACT_NAME, fact_value)
9
+ def call_the_resolver
10
+ fact_value = Facter::Resolvers::SolarisZoneName.resolve(:current_zone_name)
11
+ Facter::ResolvedFact.new(FACT_NAME, fact_value)
12
+ end
11
13
  end
12
14
  end
13
15
  end
@@ -1,24 +1,26 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Facter
3
+ module Facts
4
4
  module Solaris
5
- class Zone
6
- FACT_NAME = 'solaris_zones.zones'
5
+ module SolarisZones
6
+ class Zone
7
+ FACT_NAME = 'solaris_zones.zones'
7
8
 
8
- def call_the_resolver
9
- results = Facter::Resolvers::SolarisZone.resolve(:zone)
10
- zones_fact = {}
11
- results&.each do |result|
12
- fact_value = { result[:name].to_sym => {
13
- brand: result[:brand],
14
- id: result[:id],
15
- ip_type: result[:ip_type],
16
- path: result[:path],
17
- status: result[:status]
18
- } }
19
- zones_fact.merge!(fact_value)
9
+ def call_the_resolver
10
+ results = Facter::Resolvers::SolarisZone.resolve(:zone)
11
+ zones_fact = {}
12
+ results&.each do |result|
13
+ fact_value = { result[:name].to_sym => {
14
+ brand: result[:brand],
15
+ id: result[:id],
16
+ ip_type: result[:ip_type],
17
+ path: result[:path],
18
+ status: result[:status]
19
+ } }
20
+ zones_fact.merge!(fact_value)
21
+ end
22
+ Facter::ResolvedFact.new(FACT_NAME, zones_fact)
20
23
  end
21
- ResolvedFact.new(FACT_NAME, zones_fact)
22
24
  end
23
25
  end
24
26
  end
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Facter
3
+ module Facts
4
4
  module Solaris
5
- class ZFSFeatureNumbers
5
+ class ZfsFeaturenumbers
6
6
  FACT_NAME = 'zfs_featurenumbers'
7
7
 
8
8
  def call_the_resolver
9
- fact_value = Resolvers::Solaris::ZFS.resolve(:zfs_featurenumbers)
10
- ResolvedFact.new(FACT_NAME, fact_value)
9
+ fact_value = Facter::Resolvers::Solaris::ZFS.resolve(:zfs_featurenumbers)
10
+ Facter::ResolvedFact.new(FACT_NAME, fact_value)
11
11
  end
12
12
  end
13
13
  end
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Facter
3
+ module Facts
4
4
  module Solaris
5
- class ZFSVersion
5
+ class ZfsVersion
6
6
  FACT_NAME = 'zfs_version'
7
7
 
8
8
  def call_the_resolver
9
- fact_value = Resolvers::Solaris::ZFS.resolve(:zfs_version)
10
- ResolvedFact.new(FACT_NAME, fact_value)
9
+ fact_value = Facter::Resolvers::Solaris::ZFS.resolve(:zfs_version)
10
+ Facter::ResolvedFact.new(FACT_NAME, fact_value)
11
11
  end
12
12
  end
13
13
  end
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Facter
3
+ module Facts
4
4
  module Solaris
5
- class ZPoolFeatureNumbers
5
+ class ZpoolFeaturenumbers
6
6
  FACT_NAME = 'zpool_featurenumbers'
7
7
 
8
8
  def call_the_resolver
9
- fact_value = Resolvers::Solaris::ZPool.resolve(:zpool_featurenumbers)
10
- ResolvedFact.new(FACT_NAME, fact_value)
9
+ fact_value = Facter::Resolvers::Solaris::ZPool.resolve(:zpool_featurenumbers)
10
+ Facter::ResolvedFact.new(FACT_NAME, fact_value)
11
11
  end
12
12
  end
13
13
  end
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Facter
3
+ module Facts
4
4
  module Solaris
5
- class ZPoolVersion
5
+ class ZpoolVersion
6
6
  FACT_NAME = 'zpool_version'
7
7
 
8
8
  def call_the_resolver
9
- fact_value = Resolvers::Solaris::ZPool.resolve(:zpool_version)
10
- ResolvedFact.new(FACT_NAME, fact_value)
9
+ fact_value = Facter::Resolvers::Solaris::ZPool.resolve(:zpool_version)
10
+ Facter::ResolvedFact.new(FACT_NAME, fact_value)
11
11
  end
12
12
  end
13
13
  end
@@ -1,20 +1,20 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Facter
3
+ module Facts
4
4
  module Windows
5
5
  class DhcpServers
6
6
  FACT_NAME = 'dhcp_servers'
7
7
 
8
8
  def call_the_resolver
9
9
  fact_value = construct_addresses_hash
10
- ResolvedFact.new(FACT_NAME, fact_value.empty? ? nil : fact_value, :legacy)
10
+ Facter::ResolvedFact.new(FACT_NAME, fact_value.empty? ? nil : fact_value, :legacy)
11
11
  end
12
12
 
13
13
  private
14
14
 
15
15
  def construct_addresses_hash
16
- servers = { system: Resolvers::Networking.resolve(:dhcp) }
17
- interfaces = Resolvers::Networking.resolve(:interfaces)
16
+ servers = { system: Facter::Resolvers::Networking.resolve(:dhcp) }
17
+ interfaces = Facter::Resolvers::Networking.resolve(:interfaces)
18
18
  interfaces&.each { |interface_name, info| servers[interface_name] = info[:dhcp] if info[:dhcp] }
19
19
  servers
20
20
  end
@@ -1,15 +1,17 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Facter
3
+ module Facts
4
4
  module Windows
5
- class DmiManufacturer
6
- FACT_NAME = 'dmi.manufacturer'
7
- ALIASES = 'manufacturer'
5
+ module Dmi
6
+ class Manufacturer
7
+ FACT_NAME = 'dmi.manufacturer'
8
+ ALIASES = 'manufacturer'
8
9
 
9
- def call_the_resolver
10
- fact_value = Resolvers::DMIBios.resolve(:manufacturer)
10
+ def call_the_resolver
11
+ fact_value = Facter::Resolvers::DMIBios.resolve(:manufacturer)
11
12
 
12
- [ResolvedFact.new(FACT_NAME, fact_value), ResolvedFact.new(ALIASES, fact_value, :legacy)]
13
+ [Facter::ResolvedFact.new(FACT_NAME, fact_value), Facter::ResolvedFact.new(ALIASES, fact_value, :legacy)]
14
+ end
13
15
  end
14
16
  end
15
17
  end
@@ -1,15 +1,19 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Facter
3
+ module Facts
4
4
  module Windows
5
- class DmiProductName
6
- FACT_NAME = 'dmi.product.name'
7
- ALIASES = 'productname'
5
+ module Dmi
6
+ module Product
7
+ class Name
8
+ FACT_NAME = 'dmi.product.name'
9
+ ALIASES = 'productname'
8
10
 
9
- def call_the_resolver
10
- fact_value = Resolvers::DMIComputerSystem.resolve(:name)
11
+ def call_the_resolver
12
+ fact_value = Facter::Resolvers::DMIComputerSystem.resolve(:name)
11
13
 
12
- [ResolvedFact.new(FACT_NAME, fact_value), ResolvedFact.new(ALIASES, fact_value, :legacy)]
14
+ [Facter::ResolvedFact.new(FACT_NAME, fact_value), Facter::ResolvedFact.new(ALIASES, fact_value, :legacy)]
15
+ end
16
+ end
13
17
  end
14
18
  end
15
19
  end
@@ -1,15 +1,19 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Facter
3
+ module Facts
4
4
  module Windows
5
- class DmiProductSerialNumber
6
- FACT_NAME = 'dmi.product.serial_number'
7
- ALIASES = 'serialnumber'
5
+ module Dmi
6
+ module Product
7
+ class SerialNumber
8
+ FACT_NAME = 'dmi.product.serial_number'
9
+ ALIASES = 'serialnumber'
8
10
 
9
- def call_the_resolver
10
- fact_value = Resolvers::DMIBios.resolve(:serial_number)
11
+ def call_the_resolver
12
+ fact_value = Facter::Resolvers::DMIBios.resolve(:serial_number)
11
13
 
12
- [ResolvedFact.new(FACT_NAME, fact_value), ResolvedFact.new(ALIASES, fact_value, :legacy)]
14
+ [Facter::ResolvedFact.new(FACT_NAME, fact_value), Facter::ResolvedFact.new(ALIASES, fact_value, :legacy)]
15
+ end
16
+ end
13
17
  end
14
18
  end
15
19
  end
@@ -1,15 +1,19 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Facter
3
+ module Facts
4
4
  module Windows
5
- class DmiProductUUID
6
- FACT_NAME = 'dmi.product.uuid'
7
- ALIASES = 'uuid'
5
+ module Dmi
6
+ module Product
7
+ class Uuid
8
+ FACT_NAME = 'dmi.product.uuid'
9
+ ALIASES = 'uuid'
8
10
 
9
- def call_the_resolver
10
- fact_value = Resolvers::DMIComputerSystem.resolve(:uuid)
11
+ def call_the_resolver
12
+ fact_value = Facter::Resolvers::DMIComputerSystem.resolve(:uuid)
11
13
 
12
- [ResolvedFact.new(FACT_NAME, fact_value), ResolvedFact.new(ALIASES, fact_value, :legacy)]
14
+ [Facter::ResolvedFact.new(FACT_NAME, fact_value), Facter::ResolvedFact.new(ALIASES, fact_value, :legacy)]
15
+ end
16
+ end
13
17
  end
14
18
  end
15
19
  end
@@ -1,14 +1,14 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Facter
3
+ module Facts
4
4
  module Windows
5
5
  class Facterversion
6
6
  FACT_NAME = 'facterversion'
7
7
 
8
8
  def call_the_resolver
9
- fact_value = Resolvers::Facterversion.resolve(:facterversion)
9
+ fact_value = Facter::Resolvers::Facterversion.resolve(:facterversion)
10
10
 
11
- ResolvedFact.new(FACT_NAME, fact_value)
11
+ Facter::ResolvedFact.new(FACT_NAME, fact_value)
12
12
  end
13
13
  end
14
14
  end
@@ -1,14 +1,14 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Facter
3
+ module Facts
4
4
  module Windows
5
5
  class FipsEnabled
6
6
  FACT_NAME = 'fips_enabled'
7
7
 
8
8
  def call_the_resolver
9
- fact_value = Resolvers::Windows::Fips.resolve(:fips_enabled)
9
+ fact_value = Facter::Resolvers::Windows::Fips.resolve(:fips_enabled)
10
10
 
11
- ResolvedFact.new(FACT_NAME, fact_value)
11
+ Facter::ResolvedFact.new(FACT_NAME, fact_value)
12
12
  end
13
13
  end
14
14
  end
@@ -1,21 +1,23 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Facter
3
+ module Facts
4
4
  module Windows
5
- class HypervisorsHyperv
6
- FACT_NAME = 'hypervisors.hyperv'
5
+ module Hypervisors
6
+ class Hyperv
7
+ FACT_NAME = 'hypervisors.hyperv'
7
8
 
8
- def call_the_resolver
9
- fact_value = {} if hyperv?
9
+ def call_the_resolver
10
+ fact_value = {} if hyperv?
10
11
 
11
- ResolvedFact.new(FACT_NAME, fact_value)
12
- end
12
+ Facter::ResolvedFact.new(FACT_NAME, fact_value)
13
+ end
13
14
 
14
- private
15
+ private
15
16
 
16
- def hyperv?
17
- Resolvers::Virtualization.resolve(:virtual) == 'hyperv' ||
18
- Resolvers::DMIBios.resolve(:manufacturer).include?('Microsoft')
17
+ def hyperv?
18
+ Facter::Resolvers::Virtualization.resolve(:virtual) == 'hyperv' ||
19
+ Facter::Resolvers::DMIBios.resolve(:manufacturer).include?('Microsoft')
20
+ end
19
21
  end
20
22
  end
21
23
  end
@@ -1,33 +1,35 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Facter
3
+ module Facts
4
4
  module Windows
5
- class HypervisorsKvm
6
- FACT_NAME = 'hypervisors.kvm'
5
+ module Hypervisors
6
+ class Kvm
7
+ FACT_NAME = 'hypervisors.kvm'
7
8
 
8
- def call_the_resolver
9
- fact_value = discover_provider || {} if kvm?
9
+ def call_the_resolver
10
+ fact_value = discover_provider || {} if kvm?
10
11
 
11
- ResolvedFact.new(FACT_NAME, fact_value)
12
- end
12
+ Facter::ResolvedFact.new(FACT_NAME, fact_value)
13
+ end
13
14
 
14
- private
15
+ private
15
16
 
16
- def kvm?
17
- product_name = Resolvers::DMIComputerSystem.resolve(:name)
17
+ def kvm?
18
+ product_name = Facter::Resolvers::DMIComputerSystem.resolve(:name)
18
19
 
19
- (Resolvers::Virtualization.resolve(:virtual) == 'kvm' || Resolvers::NetKVM.resolve(:kvm)) &&
20
- product_name != 'VirtualBox' && !product_name.match(/^Parallels/)
21
- end
20
+ (Facter::Resolvers::Virtualization.resolve(:virtual) == 'kvm' || Facter::Resolvers::NetKVM.resolve(:kvm)) &&
21
+ product_name != 'VirtualBox' && !product_name.match(/^Parallels/)
22
+ end
22
23
 
23
- def discover_provider
24
- manufacturer = Resolvers::DMIBios.resolve(:manufacturer)
24
+ def discover_provider
25
+ manufacturer = Facter::Resolvers::DMIBios.resolve(:manufacturer)
25
26
 
26
- return { google: true } if manufacturer == 'Google'
27
+ return { google: true } if manufacturer == 'Google'
27
28
 
28
- return { openstack: true } if Resolvers::DMIComputerSystem.resolve(:name) =~ /^OpenStack/
29
+ return { openstack: true } if Facter::Resolvers::DMIComputerSystem.resolve(:name) =~ /^OpenStack/
29
30
 
30
- return { amazon: true } if manufacturer =~ /^Amazon/
31
+ return { amazon: true } if manufacturer =~ /^Amazon/
32
+ end
31
33
  end
32
34
  end
33
35
  end
@@ -1,34 +1,36 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Facter
3
+ module Facts
4
4
  module Windows
5
- class HypervisorsVirtualbox
6
- FACT_NAME = 'hypervisors.virtualbox'
5
+ module Hypervisors
6
+ class Virtualbox
7
+ FACT_NAME = 'hypervisors.virtualbox'
7
8
 
8
- def call_the_resolver
9
- fact_value = populate_version_and_revision if virtualbox?
9
+ def call_the_resolver
10
+ fact_value = populate_version_and_revision if virtualbox?
10
11
 
11
- ResolvedFact.new(FACT_NAME, fact_value)
12
- end
12
+ Facter::ResolvedFact.new(FACT_NAME, fact_value)
13
+ end
13
14
 
14
- private
15
+ private
15
16
 
16
- def virtualbox?
17
- Resolvers::Virtualization.resolve(:virtual) == 'virtualbox' ||
18
- Resolvers::DMIComputerSystem.resolve(:name) == 'VirtualBox'
19
- end
17
+ def virtualbox?
18
+ Facter::Resolvers::Virtualization.resolve(:virtual) == 'virtualbox' ||
19
+ Facter::Resolvers::DMIComputerSystem.resolve(:name) == 'VirtualBox'
20
+ end
20
21
 
21
- def populate_version_and_revision
22
- oem_strings = Resolvers::Virtualization.resolve(:oem_strings)
23
- return unless oem_strings
22
+ def populate_version_and_revision
23
+ oem_strings = Facter::Resolvers::Virtualization.resolve(:oem_strings)
24
+ return unless oem_strings
24
25
 
25
- version = revision = ''
26
+ version = revision = ''
26
27
 
27
- oem_strings.each do |string|
28
- version = string[8, string.size] if string.start_with?('vboxVer_') && version.empty?
29
- revision = string[8, string.size] if string.start_with?('vboxRev_') && revision.empty?
28
+ oem_strings.each do |string|
29
+ version = string[8, string.size] if string.start_with?('vboxVer_') && version.empty?
30
+ revision = string[8, string.size] if string.start_with?('vboxRev_') && revision.empty?
31
+ end
32
+ { version: version, revision: revision }
30
33
  end
31
- { version: version, revision: revision }
32
34
  end
33
35
  end
34
36
  end