facter 4.0.23

Sign up to get free protection for your applications and to get access to all the features.
Files changed (598) hide show
  1. checksums.yaml +7 -0
  2. data/.github/PULL_REQUEST_TEMPLATE.md +13 -0
  3. data/.github/actions/presuite.rb +109 -0
  4. data/.github/workflows/acceptance_tests.yml +67 -0
  5. data/.github/workflows/checks.yaml +71 -0
  6. data/.github/workflows/unit_tests.yaml +41 -0
  7. data/.gitignore +57 -0
  8. data/.jrubyrc +2 -0
  9. data/.rspec +2 -0
  10. data/.rubocop.yml +165 -0
  11. data/.rubocop_todo.yml +236 -0
  12. data/.rubycritic.yml +4 -0
  13. data/CHANGELOG.md +175 -0
  14. data/CODEOWNERS +2 -0
  15. data/CONTRIBUTING.md +93 -0
  16. data/Gemfile +12 -0
  17. data/LICENSE +21 -0
  18. data/README.md +50 -0
  19. data/Rakefile +71 -0
  20. data/VERSION +1 -0
  21. data/agent/facter-ng.gemspec +48 -0
  22. data/agent/lib/facter-ng.rb +7 -0
  23. data/bin/facter +6 -0
  24. data/check.sh +12 -0
  25. data/config/config.rb +6 -0
  26. data/custom_facts/my_custom_fact.rb +9 -0
  27. data/custom_facts/my_custom_os_fact.rb +8 -0
  28. data/docs/diagrams/facter_user_interaction.png +0 -0
  29. data/external_facts/my_external_fact.txt +1 -0
  30. data/fact_groups.conf +169 -0
  31. data/facter.conf +25 -0
  32. data/facter.gemspec +50 -0
  33. data/lib/custom_facts/core/aggregate.rb +206 -0
  34. data/lib/custom_facts/core/directed_graph.rb +47 -0
  35. data/lib/custom_facts/core/execution.rb +129 -0
  36. data/lib/custom_facts/core/execution/base.rb +100 -0
  37. data/lib/custom_facts/core/execution/posix.rb +55 -0
  38. data/lib/custom_facts/core/execution/windows.rb +70 -0
  39. data/lib/custom_facts/core/file_loader.rb +30 -0
  40. data/lib/custom_facts/core/legacy_facter.rb +208 -0
  41. data/lib/custom_facts/core/logging.rb +203 -0
  42. data/lib/custom_facts/core/resolvable.rb +103 -0
  43. data/lib/custom_facts/core/suitable.rb +110 -0
  44. data/lib/custom_facts/util/collection.rb +187 -0
  45. data/lib/custom_facts/util/composite_loader.rb +18 -0
  46. data/lib/custom_facts/util/config.rb +96 -0
  47. data/lib/custom_facts/util/confine.rb +70 -0
  48. data/lib/custom_facts/util/directory_loader.rb +85 -0
  49. data/lib/custom_facts/util/fact.rb +217 -0
  50. data/lib/custom_facts/util/loader.rb +155 -0
  51. data/lib/custom_facts/util/normalization.rb +95 -0
  52. data/lib/custom_facts/util/nothing_loader.rb +12 -0
  53. data/lib/custom_facts/util/parser.rb +193 -0
  54. data/lib/custom_facts/util/resolution.rb +166 -0
  55. data/lib/custom_facts/util/unix_root.rb +11 -0
  56. data/lib/custom_facts/util/values.rb +109 -0
  57. data/lib/custom_facts/util/windows_root.rb +11 -0
  58. data/lib/custom_facts/version.rb +85 -0
  59. data/lib/facter.rb +377 -0
  60. data/lib/facts/aix/augeas/version.rb +19 -0
  61. data/lib/facts/aix/facterversion.rb +15 -0
  62. data/lib/facts/aix/filesystems.rb +14 -0
  63. data/lib/facts/aix/hypervisors/lpar.rb +20 -0
  64. data/lib/facts/aix/hypervisors/wpar.rb +19 -0
  65. data/lib/facts/aix/identity/gid.rb +16 -0
  66. data/lib/facts/aix/identity/group.rb +18 -0
  67. data/lib/facts/aix/identity/privileged.rb +16 -0
  68. data/lib/facts/aix/identity/uid.rb +16 -0
  69. data/lib/facts/aix/identity/user.rb +17 -0
  70. data/lib/facts/aix/kernel.rb +15 -0
  71. data/lib/facts/aix/kernelmajversion.rb +16 -0
  72. data/lib/facts/aix/kernelrelease.rb +15 -0
  73. data/lib/facts/aix/kernelversion.rb +16 -0
  74. data/lib/facts/aix/load_averages.rb +14 -0
  75. data/lib/facts/aix/mountpoints.rb +15 -0
  76. data/lib/facts/aix/networking/domain.rb +17 -0
  77. data/lib/facts/aix/networking/fqdn.rb +17 -0
  78. data/lib/facts/aix/networking/hostname.rb +17 -0
  79. data/lib/facts/aix/networking/ip.rb +18 -0
  80. data/lib/facts/aix/networking/primary.rb +17 -0
  81. data/lib/facts/aix/nim_type.rb +15 -0
  82. data/lib/facts/aix/os/architecture.rb +18 -0
  83. data/lib/facts/aix/os/family.rb +18 -0
  84. data/lib/facts/aix/os/hardware.rb +18 -0
  85. data/lib/facts/aix/os/name.rb +18 -0
  86. data/lib/facts/aix/os/release.rb +21 -0
  87. data/lib/facts/aix/partitions.rb +15 -0
  88. data/lib/facts/aix/path.rb +14 -0
  89. data/lib/facts/aix/processors/count.rb +17 -0
  90. data/lib/facts/aix/processors/isa.rb +18 -0
  91. data/lib/facts/aix/processors/models.rb +16 -0
  92. data/lib/facts/aix/processors/speed.rb +17 -0
  93. data/lib/facts/aix/puppet_version.rb +15 -0
  94. data/lib/facts/aix/ruby/platform.rb +17 -0
  95. data/lib/facts/aix/ruby/sitedir.rb +17 -0
  96. data/lib/facts/aix/ruby/version.rb +17 -0
  97. data/lib/facts/aix/ssh.rb +34 -0
  98. data/lib/facts/aix/system_uptime/days.rb +17 -0
  99. data/lib/facts/aix/system_uptime/hours.rb +17 -0
  100. data/lib/facts/aix/system_uptime/seconds.rb +17 -0
  101. data/lib/facts/aix/system_uptime/uptime.rb +17 -0
  102. data/lib/facts/aix/timezone.rb +14 -0
  103. data/lib/facts/bsd/bsd_example_fact.rb +14 -0
  104. data/lib/facts/bsd/kernelmajversion.rb +16 -0
  105. data/lib/facts/bsd/kernelversion.rb +14 -0
  106. data/lib/facts/bsd/load_averages.rb +14 -0
  107. data/lib/facts/bsd/os/family.rb +18 -0
  108. data/lib/facts/debian/architecture.rb +20 -0
  109. data/lib/facts/debian/lsbdistcodename.rb +16 -0
  110. data/lib/facts/debian/lsbdistdescription.rb +16 -0
  111. data/lib/facts/debian/lsbdistid.rb +16 -0
  112. data/lib/facts/debian/os/distro/codename.rb +30 -0
  113. data/lib/facts/debian/os/distro/description.rb +19 -0
  114. data/lib/facts/debian/os/distro/id.rb +19 -0
  115. data/lib/facts/debian/os/distro/release.rb +33 -0
  116. data/lib/facts/debian/os/release.rb +36 -0
  117. data/lib/facts/freebsd/os/release.rb +43 -0
  118. data/lib/facts/linux/augeas/version.rb +19 -0
  119. data/lib/facts/linux/dhcp_servers.rb +27 -0
  120. data/lib/facts/linux/disks.rb +15 -0
  121. data/lib/facts/linux/dmi/bios/release_date.rb +19 -0
  122. data/lib/facts/linux/dmi/bios/vendor.rb +19 -0
  123. data/lib/facts/linux/dmi/bios/version.rb +19 -0
  124. data/lib/facts/linux/dmi/board/manufacturer.rb +19 -0
  125. data/lib/facts/linux/dmi/board/product.rb +19 -0
  126. data/lib/facts/linux/dmi/board/serial_number.rb +19 -0
  127. data/lib/facts/linux/dmi/chassis/asset_tag.rb +19 -0
  128. data/lib/facts/linux/dmi/chassis/type.rb +19 -0
  129. data/lib/facts/linux/dmi/manufacturer.rb +17 -0
  130. data/lib/facts/linux/dmi/product/name.rb +19 -0
  131. data/lib/facts/linux/dmi/product/serial_number.rb +19 -0
  132. data/lib/facts/linux/dmi/product/uuid.rb +19 -0
  133. data/lib/facts/linux/facterversion.rb +15 -0
  134. data/lib/facts/linux/filesystems.rb +14 -0
  135. data/lib/facts/linux/fips_enabled.rb +14 -0
  136. data/lib/facts/linux/hypervisors.rb +18 -0
  137. data/lib/facts/linux/identity/gid.rb +16 -0
  138. data/lib/facts/linux/identity/group.rb +18 -0
  139. data/lib/facts/linux/identity/privileged.rb +16 -0
  140. data/lib/facts/linux/identity/uid.rb +16 -0
  141. data/lib/facts/linux/identity/user.rb +17 -0
  142. data/lib/facts/linux/interfaces.rb +16 -0
  143. data/lib/facts/linux/ipaddress6_interfaces.rb +20 -0
  144. data/lib/facts/linux/ipaddress_interfaces.rb +20 -0
  145. data/lib/facts/linux/kernel.rb +15 -0
  146. data/lib/facts/linux/kernelmajversion.rb +24 -0
  147. data/lib/facts/linux/kernelrelease.rb +14 -0
  148. data/lib/facts/linux/kernelversion.rb +15 -0
  149. data/lib/facts/linux/load_averages.rb +14 -0
  150. data/lib/facts/linux/lsbdistrelease.rb +23 -0
  151. data/lib/facts/linux/macaddress_interfaces.rb +20 -0
  152. data/lib/facts/linux/memory/swap/available.rb +20 -0
  153. data/lib/facts/linux/memory/swap/available_bytes.rb +21 -0
  154. data/lib/facts/linux/memory/swap/capacity.rb +18 -0
  155. data/lib/facts/linux/memory/swap/total.rb +20 -0
  156. data/lib/facts/linux/memory/swap/total_bytes.rb +20 -0
  157. data/lib/facts/linux/memory/swap/used.rb +19 -0
  158. data/lib/facts/linux/memory/swap/used_bytes.rb +18 -0
  159. data/lib/facts/linux/memory/system/available.rb +21 -0
  160. data/lib/facts/linux/memory/system/available_bytes.rb +21 -0
  161. data/lib/facts/linux/memory/system/capacity.rb +18 -0
  162. data/lib/facts/linux/memory/system/total.rb +20 -0
  163. data/lib/facts/linux/memory/system/total_bytes.rb +20 -0
  164. data/lib/facts/linux/memory/system/used.rb +19 -0
  165. data/lib/facts/linux/memory/system/used_bytes.rb +18 -0
  166. data/lib/facts/linux/mountpoints.rb +21 -0
  167. data/lib/facts/linux/mtu_interfaces.rb +20 -0
  168. data/lib/facts/linux/netmask6_interfaces.rb +20 -0
  169. data/lib/facts/linux/netmask_interfaces.rb +20 -0
  170. data/lib/facts/linux/network6_interfaces.rb +20 -0
  171. data/lib/facts/linux/network_interfaces.rb +20 -0
  172. data/lib/facts/linux/networking/dhcp.rb +20 -0
  173. data/lib/facts/linux/networking/domain.rb +17 -0
  174. data/lib/facts/linux/networking/fqdn.rb +17 -0
  175. data/lib/facts/linux/networking/hostname.rb +17 -0
  176. data/lib/facts/linux/networking/interfaces.rb +16 -0
  177. data/lib/facts/linux/networking/ip.rb +21 -0
  178. data/lib/facts/linux/networking/ip6.rb +21 -0
  179. data/lib/facts/linux/networking/mac.rb +21 -0
  180. data/lib/facts/linux/networking/mtu.rb +20 -0
  181. data/lib/facts/linux/networking/netmask.rb +21 -0
  182. data/lib/facts/linux/networking/netmask6.rb +21 -0
  183. data/lib/facts/linux/networking/network.rb +21 -0
  184. data/lib/facts/linux/networking/network6.rb +21 -0
  185. data/lib/facts/linux/networking/primary.rb +17 -0
  186. data/lib/facts/linux/networking/scope6.rb +20 -0
  187. data/lib/facts/linux/os/architecture.rb +20 -0
  188. data/lib/facts/linux/os/distro/codename.rb +21 -0
  189. data/lib/facts/linux/os/distro/description.rb +21 -0
  190. data/lib/facts/linux/os/distro/id.rb +21 -0
  191. data/lib/facts/linux/os/distro/release.rb +31 -0
  192. data/lib/facts/linux/os/distro/specification.rb +21 -0
  193. data/lib/facts/linux/os/family.rb +20 -0
  194. data/lib/facts/linux/os/hardware.rb +18 -0
  195. data/lib/facts/linux/os/name.rb +18 -0
  196. data/lib/facts/linux/os/release.rb +20 -0
  197. data/lib/facts/linux/os/selinux/config_mode.rb +21 -0
  198. data/lib/facts/linux/os/selinux/config_policy.rb +21 -0
  199. data/lib/facts/linux/os/selinux/current_mode.rb +21 -0
  200. data/lib/facts/linux/os/selinux/enabled.rb +21 -0
  201. data/lib/facts/linux/os/selinux/enforced.rb +21 -0
  202. data/lib/facts/linux/os/selinux/policy_version.rb +21 -0
  203. data/lib/facts/linux/partitions.rb +26 -0
  204. data/lib/facts/linux/path.rb +15 -0
  205. data/lib/facts/linux/processor.rb +20 -0
  206. data/lib/facts/linux/processors/count.rb +17 -0
  207. data/lib/facts/linux/processors/isa.rb +26 -0
  208. data/lib/facts/linux/processors/models.rb +16 -0
  209. data/lib/facts/linux/processors/physicalcount.rb +17 -0
  210. data/lib/facts/linux/puppet_version.rb +15 -0
  211. data/lib/facts/linux/ruby/platform.rb +18 -0
  212. data/lib/facts/linux/ruby/sitedir.rb +18 -0
  213. data/lib/facts/linux/ruby/version.rb +18 -0
  214. data/lib/facts/linux/scope6_interfaces.rb +26 -0
  215. data/lib/facts/linux/ssh.rb +26 -0
  216. data/lib/facts/linux/sshalgorithmkey.rb +17 -0
  217. data/lib/facts/linux/sshfp_algorithm.rb +20 -0
  218. data/lib/facts/linux/system_uptime/days.rb +18 -0
  219. data/lib/facts/linux/system_uptime/hours.rb +18 -0
  220. data/lib/facts/linux/system_uptime/seconds.rb +18 -0
  221. data/lib/facts/linux/system_uptime/uptime.rb +18 -0
  222. data/lib/facts/linux/timezone.rb +14 -0
  223. data/lib/facts/linux/virtual.rb +23 -0
  224. data/lib/facts/macosx/augeas/version.rb +19 -0
  225. data/lib/facts/macosx/dmi/product/name.rb +19 -0
  226. data/lib/facts/macosx/facterversion.rb +15 -0
  227. data/lib/facts/macosx/filesystems.rb +14 -0
  228. data/lib/facts/macosx/identity/gid.rb +16 -0
  229. data/lib/facts/macosx/identity/group.rb +18 -0
  230. data/lib/facts/macosx/identity/privileged.rb +16 -0
  231. data/lib/facts/macosx/identity/uid.rb +16 -0
  232. data/lib/facts/macosx/identity/user.rb +17 -0
  233. data/lib/facts/macosx/interfaces.rb +15 -0
  234. data/lib/facts/macosx/is_virtual.rb +30 -0
  235. data/lib/facts/macosx/kernel.rb +14 -0
  236. data/lib/facts/macosx/kernelmajversion.rb +15 -0
  237. data/lib/facts/macosx/kernelrelease.rb +14 -0
  238. data/lib/facts/macosx/kernelversion.rb +14 -0
  239. data/lib/facts/macosx/load_averages.rb +14 -0
  240. data/lib/facts/macosx/memory/swap/available.rb +21 -0
  241. data/lib/facts/macosx/memory/swap/available_bytes.rb +20 -0
  242. data/lib/facts/macosx/memory/swap/capacity.rb +18 -0
  243. data/lib/facts/macosx/memory/swap/encrypted.rb +19 -0
  244. data/lib/facts/macosx/memory/swap/total.rb +21 -0
  245. data/lib/facts/macosx/memory/swap/total_bytes.rb +20 -0
  246. data/lib/facts/macosx/memory/swap/used.rb +20 -0
  247. data/lib/facts/macosx/memory/swap/used_bytes.rb +18 -0
  248. data/lib/facts/macosx/memory/system/available.rb +21 -0
  249. data/lib/facts/macosx/memory/system/available_bytes.rb +20 -0
  250. data/lib/facts/macosx/memory/system/capacity.rb +18 -0
  251. data/lib/facts/macosx/memory/system/total.rb +21 -0
  252. data/lib/facts/macosx/memory/system/total_bytes.rb +20 -0
  253. data/lib/facts/macosx/memory/system/used.rb +20 -0
  254. data/lib/facts/macosx/memory/system/used_bytes.rb +18 -0
  255. data/lib/facts/macosx/mountpoints.rb +16 -0
  256. data/lib/facts/macosx/networking/domain.rb +17 -0
  257. data/lib/facts/macosx/networking/fqdn.rb +17 -0
  258. data/lib/facts/macosx/networking/hostname.rb +17 -0
  259. data/lib/facts/macosx/networking/ip.rb +18 -0
  260. data/lib/facts/macosx/networking/mac.rb +18 -0
  261. data/lib/facts/macosx/os/architecture.rb +17 -0
  262. data/lib/facts/macosx/os/family.rb +18 -0
  263. data/lib/facts/macosx/os/hardware.rb +17 -0
  264. data/lib/facts/macosx/os/macosx/build.rb +19 -0
  265. data/lib/facts/macosx/os/macosx/product.rb +19 -0
  266. data/lib/facts/macosx/os/macosx/version.rb +25 -0
  267. data/lib/facts/macosx/os/name.rb +18 -0
  268. data/lib/facts/macosx/os/release.rb +26 -0
  269. data/lib/facts/macosx/path.rb +15 -0
  270. data/lib/facts/macosx/processors/count.rb +17 -0
  271. data/lib/facts/macosx/processors/isa.rb +17 -0
  272. data/lib/facts/macosx/processors/models.rb +21 -0
  273. data/lib/facts/macosx/processors/physicalcount.rb +17 -0
  274. data/lib/facts/macosx/processors/speed.rb +17 -0
  275. data/lib/facts/macosx/puppet_version.rb +15 -0
  276. data/lib/facts/macosx/ruby/platform.rb +17 -0
  277. data/lib/facts/macosx/ruby/sitedir.rb +17 -0
  278. data/lib/facts/macosx/ruby/version.rb +18 -0
  279. data/lib/facts/macosx/ssh.rb +26 -0
  280. data/lib/facts/macosx/sshalgorithmkey.rb +17 -0
  281. data/lib/facts/macosx/sshfp_algorithm.rb +20 -0
  282. data/lib/facts/macosx/system_profiler/boot_mode.rb +17 -0
  283. data/lib/facts/macosx/system_profiler/boot_rom_version.rb +17 -0
  284. data/lib/facts/macosx/system_profiler/boot_volume.rb +17 -0
  285. data/lib/facts/macosx/system_profiler/computer_name.rb +17 -0
  286. data/lib/facts/macosx/system_profiler/cores.rb +17 -0
  287. data/lib/facts/macosx/system_profiler/hardware_uuid.rb +17 -0
  288. data/lib/facts/macosx/system_profiler/kernel_version.rb +17 -0
  289. data/lib/facts/macosx/system_profiler/l2_cache_per_core.rb +17 -0
  290. data/lib/facts/macosx/system_profiler/l3_cache.rb +17 -0
  291. data/lib/facts/macosx/system_profiler/memory.rb +17 -0
  292. data/lib/facts/macosx/system_profiler/model_identifier.rb +17 -0
  293. data/lib/facts/macosx/system_profiler/model_name.rb +17 -0
  294. data/lib/facts/macosx/system_profiler/processor_name.rb +17 -0
  295. data/lib/facts/macosx/system_profiler/processor_speed.rb +17 -0
  296. data/lib/facts/macosx/system_profiler/processors.rb +17 -0
  297. data/lib/facts/macosx/system_profiler/secure_virtual_memory.rb +17 -0
  298. data/lib/facts/macosx/system_profiler/serial_number.rb +17 -0
  299. data/lib/facts/macosx/system_profiler/smc_version.rb +17 -0
  300. data/lib/facts/macosx/system_profiler/system_version.rb +17 -0
  301. data/lib/facts/macosx/system_profiler/uptime.rb +17 -0
  302. data/lib/facts/macosx/system_profiler/username.rb +17 -0
  303. data/lib/facts/macosx/system_uptime/days.rb +17 -0
  304. data/lib/facts/macosx/system_uptime/hours.rb +17 -0
  305. data/lib/facts/macosx/system_uptime/seconds.rb +17 -0
  306. data/lib/facts/macosx/system_uptime/uptime.rb +17 -0
  307. data/lib/facts/macosx/timezone.rb +14 -0
  308. data/lib/facts/rhel/os/distro/codename.rb +21 -0
  309. data/lib/facts/rhel/os/distro/description.rb +21 -0
  310. data/lib/facts/rhel/os/distro/id.rb +21 -0
  311. data/lib/facts/rhel/os/distro/release.rb +31 -0
  312. data/lib/facts/rhel/os/family.rb +16 -0
  313. data/lib/facts/rhel/os/name.rb +19 -0
  314. data/lib/facts/rhel/os/release.rb +36 -0
  315. data/lib/facts/sles/os/distro/codename.rb +21 -0
  316. data/lib/facts/sles/os/distro/description.rb +21 -0
  317. data/lib/facts/sles/os/distro/id.rb +21 -0
  318. data/lib/facts/sles/os/distro/release.rb +31 -0
  319. data/lib/facts/sles/os/family.rb +16 -0
  320. data/lib/facts/sles/os/release.rb +29 -0
  321. data/lib/facts/solaris/augeas/version.rb +19 -0
  322. data/lib/facts/solaris/facterversion.rb +14 -0
  323. data/lib/facts/solaris/filesystems.rb +14 -0
  324. data/lib/facts/solaris/identity/gid.rb +16 -0
  325. data/lib/facts/solaris/identity/group.rb +18 -0
  326. data/lib/facts/solaris/identity/privileged.rb +16 -0
  327. data/lib/facts/solaris/identity/uid.rb +16 -0
  328. data/lib/facts/solaris/identity/user.rb +17 -0
  329. data/lib/facts/solaris/kernel.rb +14 -0
  330. data/lib/facts/solaris/kernelmajversion.rb +16 -0
  331. data/lib/facts/solaris/kernelrelease.rb +14 -0
  332. data/lib/facts/solaris/kernelversion.rb +14 -0
  333. data/lib/facts/solaris/mountpoints.rb +21 -0
  334. data/lib/facts/solaris/networking/domain.rb +17 -0
  335. data/lib/facts/solaris/networking/fqdn.rb +17 -0
  336. data/lib/facts/solaris/networking/hostname.rb +17 -0
  337. data/lib/facts/solaris/networking/ip.rb +18 -0
  338. data/lib/facts/solaris/os/architecture.rb +18 -0
  339. data/lib/facts/solaris/os/family.rb +16 -0
  340. data/lib/facts/solaris/os/hardware.rb +18 -0
  341. data/lib/facts/solaris/os/name.rb +19 -0
  342. data/lib/facts/solaris/os/release.rb +22 -0
  343. data/lib/facts/solaris/path.rb +14 -0
  344. data/lib/facts/solaris/processors/count.rb +17 -0
  345. data/lib/facts/solaris/processors/isa.rb +17 -0
  346. data/lib/facts/solaris/processors/models.rb +21 -0
  347. data/lib/facts/solaris/processors/physicalcount.rb +17 -0
  348. data/lib/facts/solaris/processors/speed.rb +17 -0
  349. data/lib/facts/solaris/puppet_version.rb +15 -0
  350. data/lib/facts/solaris/ruby/platform.rb +18 -0
  351. data/lib/facts/solaris/ruby/sitedir.rb +17 -0
  352. data/lib/facts/solaris/ruby/version.rb +17 -0
  353. data/lib/facts/solaris/solaris_zones/current.rb +18 -0
  354. data/lib/facts/solaris/solaris_zones/zone.rb +62 -0
  355. data/lib/facts/solaris/ssh.rb +26 -0
  356. data/lib/facts/solaris/system_uptime/days.rb +18 -0
  357. data/lib/facts/solaris/system_uptime/hours.rb +18 -0
  358. data/lib/facts/solaris/system_uptime/seconds.rb +18 -0
  359. data/lib/facts/solaris/system_uptime/uptime.rb +18 -0
  360. data/lib/facts/solaris/timezone.rb +14 -0
  361. data/lib/facts/solaris/zfs_featurenumbers.rb +14 -0
  362. data/lib/facts/solaris/zfs_version.rb +14 -0
  363. data/lib/facts/solaris/zpool_featureflags.rb +14 -0
  364. data/lib/facts/solaris/zpool_featurenumbers.rb +14 -0
  365. data/lib/facts/solaris/zpool_version.rb +14 -0
  366. data/lib/facts/ubuntu/os/distro/release.rb +31 -0
  367. data/lib/facts/ubuntu/os/release.rb +20 -0
  368. data/lib/facts/windows/augeas/version.rb +19 -0
  369. data/lib/facts/windows/dhcp_servers.rb +26 -0
  370. data/lib/facts/windows/dmi/manufacturer.rb +18 -0
  371. data/lib/facts/windows/dmi/product/name.rb +20 -0
  372. data/lib/facts/windows/dmi/product/serial_number.rb +20 -0
  373. data/lib/facts/windows/dmi/product/uuid.rb +20 -0
  374. data/lib/facts/windows/facterversion.rb +15 -0
  375. data/lib/facts/windows/fips_enabled.rb +15 -0
  376. data/lib/facts/windows/hypervisors/hyperv.rb +24 -0
  377. data/lib/facts/windows/hypervisors/kvm.rb +36 -0
  378. data/lib/facts/windows/hypervisors/virtualbox.rb +37 -0
  379. data/lib/facts/windows/hypervisors/vmware.rb +24 -0
  380. data/lib/facts/windows/hypervisors/xen.rb +23 -0
  381. data/lib/facts/windows/identity/privileged.rb +17 -0
  382. data/lib/facts/windows/identity/user.rb +18 -0
  383. data/lib/facts/windows/interfaces.rb +15 -0
  384. data/lib/facts/windows/ipaddress6_interfaces.rb +20 -0
  385. data/lib/facts/windows/ipaddress_interfaces.rb +20 -0
  386. data/lib/facts/windows/kernel.rb +15 -0
  387. data/lib/facts/windows/kernelmajversion.rb +15 -0
  388. data/lib/facts/windows/kernelrelease.rb +15 -0
  389. data/lib/facts/windows/kernelversion.rb +15 -0
  390. data/lib/facts/windows/macaddress_interfaces.rb +20 -0
  391. data/lib/facts/windows/memory/system/available.rb +21 -0
  392. data/lib/facts/windows/memory/system/available_bytes.rb +21 -0
  393. data/lib/facts/windows/memory/system/capacity.rb +19 -0
  394. data/lib/facts/windows/memory/system/total.rb +21 -0
  395. data/lib/facts/windows/memory/system/total_bytes.rb +21 -0
  396. data/lib/facts/windows/memory/system/used.rb +20 -0
  397. data/lib/facts/windows/memory/system/used_bytes.rb +19 -0
  398. data/lib/facts/windows/mtu_interfaces.rb +20 -0
  399. data/lib/facts/windows/netmask6_interfaces.rb +20 -0
  400. data/lib/facts/windows/netmask_interfaces.rb +20 -0
  401. data/lib/facts/windows/network6_interfaces.rb +20 -0
  402. data/lib/facts/windows/network_interfaces.rb +20 -0
  403. data/lib/facts/windows/networking/dhcp.rb +17 -0
  404. data/lib/facts/windows/networking/domain.rb +18 -0
  405. data/lib/facts/windows/networking/fqdn.rb +22 -0
  406. data/lib/facts/windows/networking/hostname.rb +18 -0
  407. data/lib/facts/windows/networking/interfaces.rb +17 -0
  408. data/lib/facts/windows/networking/ip.rb +18 -0
  409. data/lib/facts/windows/networking/ip6.rb +18 -0
  410. data/lib/facts/windows/networking/mac.rb +18 -0
  411. data/lib/facts/windows/networking/mtu.rb +17 -0
  412. data/lib/facts/windows/networking/netmask.rb +18 -0
  413. data/lib/facts/windows/networking/netmask6.rb +18 -0
  414. data/lib/facts/windows/networking/network.rb +18 -0
  415. data/lib/facts/windows/networking/network6.rb +18 -0
  416. data/lib/facts/windows/networking/primary.rb +17 -0
  417. data/lib/facts/windows/networking/scope6.rb +17 -0
  418. data/lib/facts/windows/os/architecture.rb +18 -0
  419. data/lib/facts/windows/os/family.rb +18 -0
  420. data/lib/facts/windows/os/hardware.rb +18 -0
  421. data/lib/facts/windows/os/name.rb +18 -0
  422. data/lib/facts/windows/os/release.rb +35 -0
  423. data/lib/facts/windows/os/windows/edition_id.rb +20 -0
  424. data/lib/facts/windows/os/windows/installation_type.rb +20 -0
  425. data/lib/facts/windows/os/windows/product_name.rb +20 -0
  426. data/lib/facts/windows/os/windows/release_id.rb +20 -0
  427. data/lib/facts/windows/os/windows/system32.rb +20 -0
  428. data/lib/facts/windows/path.rb +15 -0
  429. data/lib/facts/windows/processor.rb +20 -0
  430. data/lib/facts/windows/processors/count.rb +18 -0
  431. data/lib/facts/windows/processors/isa.rb +18 -0
  432. data/lib/facts/windows/processors/models.rb +17 -0
  433. data/lib/facts/windows/processors/physicalcount.rb +18 -0
  434. data/lib/facts/windows/puppet_version.rb +15 -0
  435. data/lib/facts/windows/ruby/platform.rb +18 -0
  436. data/lib/facts/windows/ruby/sitedir.rb +18 -0
  437. data/lib/facts/windows/ruby/version.rb +18 -0
  438. data/lib/facts/windows/scope6_interfaces.rb +20 -0
  439. data/lib/facts/windows/ssh.rb +27 -0
  440. data/lib/facts/windows/system_uptime/days.rb +18 -0
  441. data/lib/facts/windows/system_uptime/hours.rb +18 -0
  442. data/lib/facts/windows/system_uptime/seconds.rb +18 -0
  443. data/lib/facts/windows/system_uptime/uptime.rb +18 -0
  444. data/lib/facts/windows/timezone.rb +15 -0
  445. data/lib/facts/windows/virtualization/is_virtual.rb +17 -0
  446. data/lib/facts/windows/virtualization/virtual.rb +17 -0
  447. data/lib/facts_utils/unit_converter.rb +59 -0
  448. data/lib/facts_utils/uptime_parser.rb +124 -0
  449. data/lib/facts_utils/windows_release_finder.rb +51 -0
  450. data/lib/framework/cli/cli.rb +140 -0
  451. data/lib/framework/cli/cli_launcher.rb +19 -0
  452. data/lib/framework/config/config_reader.rb +50 -0
  453. data/lib/framework/config/fact_groups.rb +56 -0
  454. data/lib/framework/core/cache_manager.rb +129 -0
  455. data/lib/framework/core/fact/external/external_fact_manager.rb +31 -0
  456. data/lib/framework/core/fact/internal/core_fact.rb +15 -0
  457. data/lib/framework/core/fact/internal/internal_fact_manager.rb +54 -0
  458. data/lib/framework/core/fact_augmenter.rb +37 -0
  459. data/lib/framework/core/fact_filter.rb +27 -0
  460. data/lib/framework/core/fact_loaders/class_discoverer.rb +32 -0
  461. data/lib/framework/core/fact_loaders/external_fact_loader.rb +45 -0
  462. data/lib/framework/core/fact_loaders/fact_loader.rb +72 -0
  463. data/lib/framework/core/fact_loaders/internal_fact_loader.rb +53 -0
  464. data/lib/framework/core/fact_manager.rb +64 -0
  465. data/lib/framework/core/file_loader.rb +58 -0
  466. data/lib/framework/core/options.rb +64 -0
  467. data/lib/framework/core/options/config_file_options.rb +92 -0
  468. data/lib/framework/core/options/option_store.rb +174 -0
  469. data/lib/framework/core/options/options_validator.rb +83 -0
  470. data/lib/framework/core/session_cache.rb +19 -0
  471. data/lib/framework/detector/os_detector.rb +73 -0
  472. data/lib/framework/detector/os_hierarchy.rb +53 -0
  473. data/lib/framework/formatters/formatter_factory.rb +13 -0
  474. data/lib/framework/formatters/formatter_helper.rb +39 -0
  475. data/lib/framework/formatters/hocon_fact_formatter.rb +50 -0
  476. data/lib/framework/formatters/json_fact_formatter.rb +35 -0
  477. data/lib/framework/formatters/legacy_fact_formatter.rb +91 -0
  478. data/lib/framework/formatters/yaml_fact_formatter.rb +64 -0
  479. data/lib/framework/logging/logger.rb +126 -0
  480. data/lib/framework/logging/logger_helper.rb +19 -0
  481. data/lib/framework/parsers/query_parser.rb +99 -0
  482. data/lib/framework/utils/utils.rb +37 -0
  483. data/lib/models/fact_collection.rb +45 -0
  484. data/lib/models/loaded_fact.rb +13 -0
  485. data/lib/models/resolved_fact.rb +28 -0
  486. data/lib/models/searched_fact.rb +15 -0
  487. data/lib/resolvers/agent_resolver.rb +23 -0
  488. data/lib/resolvers/aix/architecture_resolver.rb +39 -0
  489. data/lib/resolvers/aix/ffi/ffi_helper.rb +35 -0
  490. data/lib/resolvers/aix/filesystem_resolver.rb +34 -0
  491. data/lib/resolvers/aix/hardware_resolver.rb +39 -0
  492. data/lib/resolvers/aix/load_averages_resolver.rb +28 -0
  493. data/lib/resolvers/aix/mountpoints.rb +69 -0
  494. data/lib/resolvers/aix/networking_resolver.rb +34 -0
  495. data/lib/resolvers/aix/nim.rb +31 -0
  496. data/lib/resolvers/aix/os_level_resolver.rb +26 -0
  497. data/lib/resolvers/aix/partitions.rb +83 -0
  498. data/lib/resolvers/aix/processors.rb +80 -0
  499. data/lib/resolvers/aix/utils/odm_query.rb +42 -0
  500. data/lib/resolvers/augeas_resolver.rb +24 -0
  501. data/lib/resolvers/base_resolver.rb +33 -0
  502. data/lib/resolvers/bsd/ffi/ffi_helper.rb +25 -0
  503. data/lib/resolvers/bsd/load_averages_resolver.rb +26 -0
  504. data/lib/resolvers/debian_version.rb +29 -0
  505. data/lib/resolvers/disk_resolver.rb +54 -0
  506. data/lib/resolvers/dmi_resolver.rb +59 -0
  507. data/lib/resolvers/docker_lxc.rb +49 -0
  508. data/lib/resolvers/eos_release_resolver.rb +33 -0
  509. data/lib/resolvers/facterversion_resolver.rb +23 -0
  510. data/lib/resolvers/filesystems_resolver.rb +34 -0
  511. data/lib/resolvers/fips_enabled_resolver.rb +27 -0
  512. data/lib/resolvers/freebsd/freebsd_version_resolver.rb +37 -0
  513. data/lib/resolvers/hostname_resolver.rb +45 -0
  514. data/lib/resolvers/identity_resolver.rb +31 -0
  515. data/lib/resolvers/load_averages_resolver.rb +27 -0
  516. data/lib/resolvers/lpar_resolver.rb +31 -0
  517. data/lib/resolvers/lsb_release_resolver.rb +49 -0
  518. data/lib/resolvers/macosx/dmi_resolver.rb +28 -0
  519. data/lib/resolvers/macosx/filesystems_resolver.rb +32 -0
  520. data/lib/resolvers/macosx/ipaddress_resolver.rb +52 -0
  521. data/lib/resolvers/macosx/load_averages_resolver.rb +26 -0
  522. data/lib/resolvers/macosx/mountpoints_resolver.rb +61 -0
  523. data/lib/resolvers/macosx/processor_resolver.rb +58 -0
  524. data/lib/resolvers/macosx/swap_memory_resolver.rb +42 -0
  525. data/lib/resolvers/macosx/system_memory_resolver.rb +45 -0
  526. data/lib/resolvers/macosx/system_profiler_resolver.rb +62 -0
  527. data/lib/resolvers/memory_resolver.rb +59 -0
  528. data/lib/resolvers/mountpoints_resolver.rb +62 -0
  529. data/lib/resolvers/networking_linux_resolver.rb +163 -0
  530. data/lib/resolvers/os_level_resolver.rb +29 -0
  531. data/lib/resolvers/os_release_resolver.rb +67 -0
  532. data/lib/resolvers/partitions.rb +110 -0
  533. data/lib/resolvers/path_resolver.rb +22 -0
  534. data/lib/resolvers/processors_resolver.rb +63 -0
  535. data/lib/resolvers/puppet_version_resolver.rb +27 -0
  536. data/lib/resolvers/redhat_release_resolver.rb +55 -0
  537. data/lib/resolvers/ruby_resolver.rb +25 -0
  538. data/lib/resolvers/selinux_resolver.rb +69 -0
  539. data/lib/resolvers/solaris/filesystems_resolver.rb +32 -0
  540. data/lib/resolvers/solaris/ipaddress_resolver.rb +39 -0
  541. data/lib/resolvers/solaris/processors.rb +36 -0
  542. data/lib/resolvers/solaris/solaris_os_release_resolver.rb +42 -0
  543. data/lib/resolvers/solaris/solaris_zone_name.rb +28 -0
  544. data/lib/resolvers/solaris/zfs_resolver.rb +34 -0
  545. data/lib/resolvers/solaris/zone_resolver.rb +48 -0
  546. data/lib/resolvers/solaris/zpool_resolver.rb +36 -0
  547. data/lib/resolvers/ssh_resolver.rb +37 -0
  548. data/lib/resolvers/suse_release_resolver.rb +35 -0
  549. data/lib/resolvers/sw_vers_resolver.rb +30 -0
  550. data/lib/resolvers/timezone_resolver.rb +22 -0
  551. data/lib/resolvers/uname_resolver.rb +42 -0
  552. data/lib/resolvers/uptime_resolver.rb +57 -0
  553. data/lib/resolvers/utils/filesystem_helper.rb +41 -0
  554. data/lib/resolvers/utils/fingerprint.rb +11 -0
  555. data/lib/resolvers/utils/ssh.rb +13 -0
  556. data/lib/resolvers/utils/ssh_helper.rb +27 -0
  557. data/lib/resolvers/windows/dmi_bios_resolver.rb +41 -0
  558. data/lib/resolvers/windows/dmi_computersystem_resolver.rb +40 -0
  559. data/lib/resolvers/windows/ffi/ffi.rb +65 -0
  560. data/lib/resolvers/windows/ffi/hardware_ffi.rb +17 -0
  561. data/lib/resolvers/windows/ffi/identity_ffi.rb +15 -0
  562. data/lib/resolvers/windows/ffi/ip_adapter_addresses_lh.rb +161 -0
  563. data/lib/resolvers/windows/ffi/kernel_ffi.rb +14 -0
  564. data/lib/resolvers/windows/ffi/memory_ffi.rb +12 -0
  565. data/lib/resolvers/windows/ffi/network_utils.rb +65 -0
  566. data/lib/resolvers/windows/ffi/networking_ffi.rb +34 -0
  567. data/lib/resolvers/windows/ffi/os_version_info_ex.rb +17 -0
  568. data/lib/resolvers/windows/ffi/performance_information.rb +20 -0
  569. data/lib/resolvers/windows/ffi/system32_ffi.rb +18 -0
  570. data/lib/resolvers/windows/ffi/system_info.rb +30 -0
  571. data/lib/resolvers/windows/fips_resolver.rb +32 -0
  572. data/lib/resolvers/windows/hardware_architecture_resolver.rb +64 -0
  573. data/lib/resolvers/windows/identity_resolver.rb +57 -0
  574. data/lib/resolvers/windows/kernel_resolver.rb +42 -0
  575. data/lib/resolvers/windows/memory_resolver.rb +60 -0
  576. data/lib/resolvers/windows/netkvm_resolver.rb +33 -0
  577. data/lib/resolvers/windows/networking_resolver.rb +180 -0
  578. data/lib/resolvers/windows/processors_resolver.rb +64 -0
  579. data/lib/resolvers/windows/product_release_resolver.rb +36 -0
  580. data/lib/resolvers/windows/ssh.rb +47 -0
  581. data/lib/resolvers/windows/system32_resolver.rb +45 -0
  582. data/lib/resolvers/windows/uptime_resolver.rb +77 -0
  583. data/lib/resolvers/windows/utils/win32ole.rb +24 -0
  584. data/lib/resolvers/windows/virtualization_resolver.rb +66 -0
  585. data/lib/resolvers/windows/win_os_description_resolver.rb +31 -0
  586. data/lib/resolvers/wpar_resolver.rb +34 -0
  587. data/lib/util/api_debugger.rb +43 -0
  588. data/lib/util/file_helper.rb +33 -0
  589. data/os_hierarchy.json +37 -0
  590. data/tasks/commits.rake +31 -0
  591. data/tasks/create_fact.rake +19 -0
  592. data/tasks/fact_generator/fact.erb +14 -0
  593. data/tasks/fact_generator/fact_creator.rb +105 -0
  594. data/tasks/fact_generator/fact_spec.erb +18 -0
  595. data/tasks/fact_generator/facts.json +358 -0
  596. data/tasks/fact_generator/path.rb +10 -0
  597. data/tasks/fact_list_generator.rake +26 -0
  598. metadata +799 -0
@@ -0,0 +1,236 @@
1
+ # This configuration was generated by
2
+ # `rubocop --auto-gen-config --exclude-limit 1000`
3
+ # on 2020-05-11 09:20:37 +0300 using RuboCop version 0.74.0.
4
+ # The point is for the user to remove these configuration records
5
+ # one by one as the offenses are removed from the code base.
6
+ # Note that changes in the inspected code, or installation of new
7
+ # versions of RuboCop, may require this file to be generated again.
8
+
9
+ # Offense count: 81
10
+ # Configuration parameters: CustomTransform, IgnoreMethods.
11
+ RSpec/FilePath:
12
+ Exclude:
13
+ - 'spec/custom_facts/core/aggregate_spec.rb'
14
+ - 'spec/custom_facts/core/directed_graph_spec.rb'
15
+ - 'spec/custom_facts/core/execution/fact_manager_spec.rb'
16
+ - 'spec/custom_facts/core/execution/posix_spec.rb'
17
+ - 'spec/custom_facts/core/execution/windows_spec.rb'
18
+ - 'spec/custom_facts/core/execution_spec.rb'
19
+ - 'spec/custom_facts/core/logging_spec.rb'
20
+ - 'spec/custom_facts/core/resolvable_spec.rb'
21
+ - 'spec/custom_facts/core/suitable_spec.rb'
22
+ - 'spec/custom_facts/util/collection_spec.rb'
23
+ - 'spec/custom_facts/util/config_spec.rb'
24
+ - 'spec/custom_facts/util/confine_spec.rb'
25
+ - 'spec/custom_facts/util/directory_loader_spec.rb'
26
+ - 'spec/custom_facts/util/fact_spec.rb'
27
+ - 'spec/custom_facts/util/loader_spec.rb'
28
+ - 'spec/custom_facts/util/normalization_spec.rb'
29
+ - 'spec/custom_facts/util/parser_spec.rb'
30
+ - 'spec/custom_facts/util/resolution_spec.rb'
31
+ - 'spec/facter/facts_utils/uptime_parser_spec.rb'
32
+ - 'spec/facter/facts_utils/windows_release_finder_spec.rb'
33
+ - 'spec/facter/model/fact_collection_spec.rb'
34
+ - 'spec/facter/model/resolved_fact_spec.rb'
35
+ - 'spec/facter/resolvers/aio_agent_version_spec.rb'
36
+ - 'spec/facter/resolvers/aix/architecture_resolver_spec.rb'
37
+ - 'spec/facter/resolvers/aix/ffi_helper_spec.rb'
38
+ - 'spec/facter/resolvers/aix/hardware_resolver_spec.rb'
39
+ - 'spec/facter/resolvers/bsd/ffi_helper_spec.rb'
40
+ - 'spec/facter/resolvers/disk_resolver_spec.rb'
41
+ - 'spec/facter/resolvers/dmi_resolver_spec.rb'
42
+ - 'spec/facter/resolvers/filesystems_resolver_spec.rb'
43
+ - 'spec/facter/resolvers/fips_enabled_resolver_spec.rb'
44
+ - 'spec/facter/resolvers/identity_resolver_spec.rb'
45
+ - 'spec/facter/resolvers/load_averages_resolver_spec.rb'
46
+ - 'spec/facter/resolvers/macosx/dmi_resolver_spec.rb'
47
+ - 'spec/facter/resolvers/memory_resolver_spec.rb'
48
+ - 'spec/facter/resolvers/mountpoints_resolver_spec.rb'
49
+ - 'spec/facter/resolvers/processors_resolver_spec.rb'
50
+ - 'spec/facter/resolvers/redhat_release_resolver_spec.rb'
51
+ - 'spec/facter/resolvers/selinux_resolver_spec.rb'
52
+ - 'spec/facter/resolvers/solaris/solaris_release_resolver_spec.rb'
53
+ - 'spec/facter/resolvers/solaris/solaris_zone_name_spec.rb'
54
+ - 'spec/facter/resolvers/solaris/zone_resolver_spec.rb'
55
+ - 'spec/facter/resolvers/solaris/zpool_resolver_spec.rb'
56
+ - 'spec/facter/resolvers/suse_relese_resolver_spec.rb'
57
+ - 'spec/facter/resolvers/system_profile_resolver_spec.rb'
58
+ - 'spec/facter/resolvers/utils/aix/odm_query_spec.rb'
59
+ - 'spec/facter/resolvers/utils/macosx/filesystem_helper_spec.rb'
60
+ - 'spec/facter/resolvers/utils/windows/win32ole_spec.rb'
61
+ - 'spec/facter/resolvers/windows/dmi_bios_resolver_spec.rb'
62
+ - 'spec/facter/resolvers/windows/dmi_computersystem_resolver_spec.rb'
63
+ - 'spec/facter/resolvers/windows/hardware_architecture_resolver_spec.rb'
64
+ - 'spec/facter/resolvers/windows/identity_resolver_spec.rb'
65
+ - 'spec/facter/resolvers/windows/kernel_resolver_spec.rb'
66
+ - 'spec/facter/resolvers/windows/memory_resolver_spec.rb'
67
+ - 'spec/facter/resolvers/windows/netkvm_resolver_spec.rb'
68
+ - 'spec/facter/resolvers/windows/networking_resolver_spec.rb'
69
+ - 'spec/facter/resolvers/windows/processors_resolver_spec.rb'
70
+ - 'spec/facter/resolvers/windows/product_release_resolver_spec.rb'
71
+ - 'spec/facter/resolvers/windows/system32_resolver_spec.rb'
72
+ - 'spec/facter/resolvers/windows/virtualization_resolver_spec.rb'
73
+ - 'spec/facter/resolvers/windows/win_os_description_resolver_spec.rb'
74
+ - 'spec/framework/config/config_reader_spec.rb'
75
+ - 'spec/framework/config/fact_groups_spec.rb'
76
+ - 'spec/framework/core/fact/external/external_fact_manager_spec.rb'
77
+ - 'spec/framework/core/fact/internal/internal_fact_manager_spec.rb'
78
+ - 'spec/framework/core/fact_loaders/class_discoverer_spec.rb'
79
+ - 'spec/framework/core/fact_loaders/external_fact_loader_spec.rb'
80
+ - 'spec/framework/core/fact_loaders/fact_loader_spec.rb'
81
+ - 'spec/framework/core/fact_loaders/internal_fact_loader_spec.rb'
82
+ - 'spec/framework/core/fact_manager_spec.rb'
83
+ - 'spec/framework/core/options/option_store_spec.rb'
84
+ - 'spec/framework/core/options/options_validator_spec.rb'
85
+ - 'spec/framework/core/options_spec.rb'
86
+ - 'spec/framework/core/session_cache_spec.rb'
87
+ - 'spec/framework/detector/os_hierarchy_spec.rb'
88
+ - 'spec/framework/formatters/fact_formatter_spec.rb'
89
+ - 'spec/framework/formatters/hocon_fact_formatter_spec.rb'
90
+ - 'spec/framework/formatters/json_fact_formatter_spec.rb'
91
+ - 'spec/framework/formatters/legacy_fact_formatter_spec.rb'
92
+ - 'spec/framework/formatters/yaml_fact_formatter_spec.rb'
93
+ - 'spec/framework/utils/utils_spec.rb'
94
+
95
+ # Offense count: 15
96
+ # Configuration parameters: AssignmentOnly.
97
+ RSpec/InstanceVariable:
98
+ Exclude:
99
+ - 'spec/custom_facts/core/execution/fact_manager_spec.rb'
100
+ - 'spec/custom_facts/util/collection_spec.rb'
101
+ - 'spec/custom_facts/util/confine_spec.rb'
102
+
103
+ # Offense count: 16
104
+ RSpec/LeakyConstantDeclaration:
105
+ Exclude:
106
+ - 'spec/custom_facts/core/resolvable_spec.rb'
107
+ - 'spec/custom_facts/core/suitable_spec.rb'
108
+ - 'spec/custom_facts/shared_contexts/platform.rb'
109
+ - 'spec/custom_facts/util/collection_spec.rb'
110
+ - 'spec/facter/resolvers/macosx/mountpoints_resolver_spec.rb'
111
+ - 'spec/facter/resolvers/utils/windows/network_utils_spec.rb'
112
+
113
+ # Offense count: 99
114
+ # Configuration parameters: EnforcedStyle.
115
+ # SupportedStyles: have_received, receive
116
+ RSpec/MessageSpies:
117
+ Exclude:
118
+ - 'spec/custom_facts/core/aggregate_spec.rb'
119
+ - 'spec/custom_facts/core/execution/fact_manager_spec.rb'
120
+ - 'spec/custom_facts/core/execution/windows_spec.rb'
121
+ - 'spec/custom_facts/core/execution_spec.rb'
122
+ - 'spec/custom_facts/core/logging_spec.rb'
123
+ - 'spec/custom_facts/core/resolvable_spec.rb'
124
+ - 'spec/custom_facts/core/suitable_spec.rb'
125
+ - 'spec/custom_facts/util/collection_spec.rb'
126
+ - 'spec/custom_facts/util/confine_spec.rb'
127
+ - 'spec/custom_facts/util/directory_loader_spec.rb'
128
+ - 'spec/custom_facts/util/fact_spec.rb'
129
+ - 'spec/custom_facts/util/loader_spec.rb'
130
+ - 'spec/custom_facts/util/parser_spec.rb'
131
+ - 'spec/custom_facts/util/resolution_spec.rb'
132
+ - 'spec/facter/facter_spec.rb'
133
+ - 'spec/facter/facts/aix/os/name_spec.rb'
134
+ - 'spec/facter/facts/aix/os/release_spec.rb'
135
+ - 'spec/facter/facts/macosx/is_virtual_spec.rb'
136
+ - 'spec/facter/facts/macosx/mountpoints_spec.rb'
137
+ - 'spec/facter/facts/macosx/os/architecture_spec.rb'
138
+ - 'spec/facter/facts/macosx/os/family_spec.rb'
139
+ - 'spec/facter/facts/macosx/os/name_spec.rb'
140
+ - 'spec/facter/facts/sles/os/release_spec.rb'
141
+ - 'spec/facter/facts/solaris/os/architecture_spec.rb'
142
+ - 'spec/facter/facts/solaris/os/name_spec.rb'
143
+ - 'spec/facter/facts/solaris/ruby/platform_spec.rb'
144
+ - 'spec/facter/facts/solaris/ruby/sitedir_spec.rb'
145
+ - 'spec/facter/facts/windows/dmi/manufacturer_spec.rb'
146
+ - 'spec/facter/facts/windows/dmi/product/name_spec.rb'
147
+ - 'spec/facter/facts/windows/dmi/product/serial_number_spec.rb'
148
+ - 'spec/facter/facts/windows/dmi/product/uuid_spec.rb'
149
+ - 'spec/facter/facts/windows/identity/user_spec.rb'
150
+ - 'spec/facter/facts/windows/memory/system/available_bytes_spec.rb'
151
+ - 'spec/facter/facts/windows/memory/system/available_spec.rb'
152
+ - 'spec/facter/facts/windows/memory/system/total_bytes_spec.rb'
153
+ - 'spec/facter/facts/windows/memory/system/total_spec.rb'
154
+ - 'spec/facter/facts/windows/os/architecture_spec.rb'
155
+ - 'spec/facter/facts/windows/os/family_spec.rb'
156
+ - 'spec/facter/facts/windows/os/hardware_spec.rb'
157
+ - 'spec/facter/facts/windows/os/name_spec.rb'
158
+ - 'spec/facter/facts/windows/os/windows/edition_id_spec.rb'
159
+ - 'spec/facter/facts/windows/os/windows/installation_type_spec.rb'
160
+ - 'spec/facter/facts/windows/os/windows/product_name_spec.rb'
161
+ - 'spec/facter/facts/windows/os/windows/release_id_spec.rb'
162
+ - 'spec/facter/facts/windows/os/windows/system32_spec.rb'
163
+ - 'spec/facter/facts/windows/processors/count_spec.rb'
164
+ - 'spec/facter/facts/windows/processors/isa_spec.rb'
165
+ - 'spec/facter/facts/windows/processors/physicalcount_spec.rb'
166
+ - 'spec/facter/facts/windows/ruby/platform_spec.rb'
167
+ - 'spec/facter/facts/windows/ruby/sitedir_spec.rb'
168
+ - 'spec/facter/resolvers/utils/aix/odm_query_spec.rb'
169
+
170
+ # Offense count: 26
171
+ RSpec/SubjectStub:
172
+ Exclude:
173
+ - 'spec/custom_facts/core/aggregate_spec.rb'
174
+ - 'spec/custom_facts/core/execution/posix_spec.rb'
175
+ - 'spec/custom_facts/core/execution/windows_spec.rb'
176
+ - 'spec/custom_facts/core/logging_spec.rb'
177
+ - 'spec/custom_facts/core/resolvable_spec.rb'
178
+ - 'spec/custom_facts/util/fact_spec.rb'
179
+ - 'spec/custom_facts/util/resolution_spec.rb'
180
+
181
+ # Offense count: 131
182
+ # Configuration parameters: IgnoreNameless, IgnoreSymbolicNames.
183
+ RSpec/VerifiedDoubles:
184
+ Exclude:
185
+ - 'spec/custom_facts/core/aggregate_spec.rb'
186
+ - 'spec/custom_facts/util/collection_spec.rb'
187
+ - 'spec/custom_facts/util/confine_spec.rb'
188
+ - 'spec/custom_facts/util/directory_loader_spec.rb'
189
+ - 'spec/custom_facts/util/fact_spec.rb'
190
+ - 'spec/custom_facts/util/resolution_spec.rb'
191
+ - 'spec/facter/facter_spec.rb'
192
+ - 'spec/facter/facts/aix/ssh_spec.rb'
193
+ - 'spec/facter/facts/macosx/memory/swap/capacity_spec.rb'
194
+ - 'spec/facter/facts/macosx/memory/swap/used_bytes_spec.rb'
195
+ - 'spec/facter/facts/macosx/memory/system/capacity_spec.rb'
196
+ - 'spec/facter/facts/macosx/memory/system/used_bytes_spec.rb'
197
+ - 'spec/facter/facts/windows/dmi/product/serial_number_spec.rb'
198
+ - 'spec/facter/facts/windows/hypervisors/hyperv_spec.rb'
199
+ - 'spec/facter/facts/windows/hypervisors/kvm_spec.rb'
200
+ - 'spec/facter/facts/windows/hypervisors/virtualbox_spec.rb'
201
+ - 'spec/facter/facts/windows/hypervisors/vmware_spec.rb'
202
+ - 'spec/facter/facts/windows/hypervisors/xen_spec.rb'
203
+ - 'spec/facter/facts/windows/identity/privileged_spec.rb'
204
+ - 'spec/facter/facts/windows/memory/system/capacity_spec.rb'
205
+ - 'spec/facter/facts/windows/memory/system/used_bytes_spec.rb'
206
+ - 'spec/facter/facts/windows/networking/interfaces_spec.rb'
207
+ - 'spec/facter/facts/windows/networking/mtu_spec.rb'
208
+ - 'spec/facter/facts/windows/processors/models_spec.rb'
209
+ - 'spec/facter/facts/windows/virtualization/is_virtual_spec.rb'
210
+ - 'spec/facter/facts/windows/virtualization/virtual_spec.rb'
211
+ - 'spec/facter/query_parser_spec.rb'
212
+ - 'spec/facter/resolvers/aix/architecture_resolver_spec.rb'
213
+ - 'spec/facter/resolvers/aix/ffi_helper_spec.rb'
214
+ - 'spec/facter/resolvers/aix/hardware_resolver_spec.rb'
215
+ - 'spec/facter/resolvers/bsd/ffi_helper_spec.rb'
216
+ - 'spec/facter/resolvers/macosx/mountpoints_resolver_spec.rb'
217
+ - 'spec/facter/resolvers/mountpoints_resolver_spec.rb'
218
+ - 'spec/facter/resolvers/utils/windows/network_utils_spec.rb'
219
+ - 'spec/facter/resolvers/utils/windows/win32ole_spec.rb'
220
+ - 'spec/facter/resolvers/windows/dmi_bios_resolver_spec.rb'
221
+ - 'spec/facter/resolvers/windows/dmi_computersystem_resolver_spec.rb'
222
+ - 'spec/facter/resolvers/windows/hardware_architecture_resolver_spec.rb'
223
+ - 'spec/facter/resolvers/windows/identity_resolver_spec.rb'
224
+ - 'spec/facter/resolvers/windows/kernel_resolver_spec.rb'
225
+ - 'spec/facter/resolvers/windows/memory_resolver_spec.rb'
226
+ - 'spec/facter/resolvers/windows/processors_resolver_spec.rb'
227
+ - 'spec/facter/resolvers/windows/system32_resolver_spec.rb'
228
+ - 'spec/facter/resolvers/windows/uptime_resolver_spec.rb'
229
+ - 'spec/facter/resolvers/windows/win_os_description_resolver_spec.rb'
230
+ - 'spec/framework/core/fact_loaders/external_fact_loader_spec.rb'
231
+ - 'spec/framework/core/fact_loaders/fact_loader_spec.rb'
232
+ - 'spec/framework/core/fact_manager_spec.rb'
233
+ - 'spec/framework/core/session_cache_spec.rb'
234
+ - 'spec/framework/formatters/hocon_fact_formatter_spec.rb'
235
+ - 'spec/framework/formatters/json_fact_formatter_spec.rb'
236
+ - 'spec/mocks/util.rb'
@@ -0,0 +1,4 @@
1
+ paths: # Files to analyse.
2
+ - 'lib'
3
+ - 'bin'
4
+ - 'config'
@@ -0,0 +1,175 @@
1
+
2
+
3
+ ## [4.0.23](https://github.com/puppetlabs/facter-ng/tree/4.0.23) (2020-05-22)
4
+
5
+ [Full Changelog](https://github.com/puppetlabs/facter-ng/compare/4.0.22...4.0.23)
6
+
7
+ ### Fixed
8
+
9
+ - \(FACT-2632\) Log error message if we encounter exceptions while loading custom facts files [\#528](https://github.com/puppetlabs/facter-ng/pull/528) ([IrimieBogdan](https://github.com/IrimieBogdan))
10
+ - \(FACT-2631\) Trace is not working as expected [\#527](https://github.com/puppetlabs/facter-ng/pull/527) ([IrimieBogdan](https://github.com/IrimieBogdan))
11
+
12
+
13
+
14
+ ## [4.0.22](https://github.com/puppetlabs/facter-ng/tree/4.0.22) (2020-05-20)
15
+
16
+ [Full Changelog](https://github.com/puppetlabs/facter-ng/compare/4.0.21...4.0.22)
17
+
18
+ ### Added
19
+
20
+ - \(FACT-2603\) Detect virtual on GCE vms [\#521](https://github.com/puppetlabs/facter-ng/pull/521) ([oanatmaria](https://github.com/oanatmaria))
21
+ - \(FACT-2602\) Add docker/Lxc resolver for Linux [\#520](https://github.com/puppetlabs/facter-ng/pull/520) ([oanatmaria](https://github.com/oanatmaria))
22
+ - \(FACT-2615\) Add Solaris mountpoints fact [\#515](https://github.com/puppetlabs/facter-ng/pull/515) ([oanatmaria](https://github.com/oanatmaria))
23
+ - \(FACT-2532\) Add Aix nim\_type fact [\#513](https://github.com/puppetlabs/facter-ng/pull/513) ([oanatmaria](https://github.com/oanatmaria))
24
+ - \(FACT-2183\) Add Solaris's uptime legacy facts [\#511](https://github.com/puppetlabs/facter-ng/pull/511) ([oanatmaria](https://github.com/oanatmaria))
25
+
26
+ ### Fixed
27
+
28
+ - \(FACT-2617\) Fix for tests/external\_facts/external\_fact\_stderr\_messages\_output\_to\_stderr.rb [\#522](https://github.com/puppetlabs/facter-ng/pull/522) ([IrimieBogdan](https://github.com/IrimieBogdan))
29
+ - \(FACT-2523\) Fix for tests/external\_facts/non\_root\_users\_default\_external\_fact\_directory.rb [\#518](https://github.com/puppetlabs/facter-ng/pull/518) ([IrimieBogdan](https://github.com/IrimieBogdan))
30
+ - \(FACT-2522\) Fix for tests/external\_facts/fact\_directory\_precedence.rb [\#517](https://github.com/puppetlabs/facter-ng/pull/517) ([IrimieBogdan](https://github.com/IrimieBogdan))
31
+ - \(FACT-2521\) Fix for tests/external\_facts/external\_fact\_overrides\_custom\_fact\_with\_10000\_weight\_or\_less.rb [\#514](https://github.com/puppetlabs/facter-ng/pull/514) ([IrimieBogdan](https://github.com/IrimieBogdan))
32
+ - \(FACT-2525\) Fix for tests/options/color.rb [\#512](https://github.com/puppetlabs/facter-ng/pull/512) ([IrimieBogdan](https://github.com/IrimieBogdan))
33
+
34
+
35
+
36
+ ## [4.0.21](https://github.com/puppetlabs/facter-ng/tree/4.0.21) (2020-05-13)
37
+
38
+ [Full Changelog](https://github.com/puppetlabs/facter-ng/compare/4.0.20...4.0.21)
39
+
40
+ ### Added
41
+
42
+ - \(FACT-2599\) Run GitHub Actions on Ubuntu 16 and Osx 10 [\#497](https://github.com/puppetlabs/facter-ng/pull/497) ([Filipovici-Andrei](https://github.com/Filipovici-Andrei))
43
+ - \(FACT-2247\) Add networking fact for linux [\#496](https://github.com/puppetlabs/facter-ng/pull/496) ([oanatmaria](https://github.com/oanatmaria))
44
+ - \(FACT-2515\) Define custom fact groups in facter.conf [\#491](https://github.com/puppetlabs/facter-ng/pull/491) ([florindragos](https://github.com/florindragos))
45
+ - \(FACT-2557\) Add rake task for generating list of facts for specified OS [\#488](https://github.com/puppetlabs/facter-ng/pull/488) ([IrimieBogdan](https://github.com/IrimieBogdan))
46
+ - Add os.release facts on FreeBSD [\#485](https://github.com/puppetlabs/facter-ng/pull/485) ([smortex](https://github.com/smortex))
47
+ - \(FACT-2235\) Add Aix processors fact [\#483](https://github.com/puppetlabs/facter-ng/pull/483) ([oanatmaria](https://github.com/oanatmaria))
48
+ - \(FACT-2569\) Run acceptance tests on Ubuntu GitHub actions [\#477](https://github.com/puppetlabs/facter-ng/pull/477) ([Filipovici-Andrei](https://github.com/Filipovici-Andrei))
49
+ - \(FACT-2553\) Quote special string in YAML format [\#471](https://github.com/puppetlabs/facter-ng/pull/471) ([oanatmaria](https://github.com/oanatmaria))
50
+ - \(FACT-2517\) Open3 wrapper for executing system calls [\#469](https://github.com/puppetlabs/facter-ng/pull/469) ([oanatmaria](https://github.com/oanatmaria))
51
+
52
+ ### Fixed
53
+
54
+ - \(FACT-2533\) Fix for tests/facts/partitions.rb [\#507](https://github.com/puppetlabs/facter-ng/pull/507) ([oanatmaria](https://github.com/oanatmaria))
55
+ - \(FACT-2531\) Fix for tests/facts/validate\_file\_system\_size\_bytes.rb [\#500](https://github.com/puppetlabs/facter-ng/pull/500) ([oanatmaria](https://github.com/oanatmaria))
56
+ - \(FACT-2582\) Date and Time in external YAML fact is not loaded [\#499](https://github.com/puppetlabs/facter-ng/pull/499) ([IrimieBogdan](https://github.com/IrimieBogdan))
57
+ - \(FACT-2556\) Refactor existing facts to use the new OS hierarchy [\#486](https://github.com/puppetlabs/facter-ng/pull/486) ([IrimieBogdan](https://github.com/IrimieBogdan))
58
+
59
+
60
+
61
+ ## [4.0.20](https://github.com/puppetlabs/facter-ng/tree/4.0.20) (2020-05-06)
62
+
63
+ [Full Changelog](https://github.com/puppetlabs/facter-ng/compare/4.0.19...4.0.20)
64
+
65
+ ### Added
66
+
67
+ - Add \*BSD kernelversion and kernelmajversion facts [\#462](https://github.com/puppetlabs/facter-ng/pull/462) ([smortex](https://github.com/smortex))
68
+ - Fix os.family fact on \*BSD [\#461](https://github.com/puppetlabs/facter-ng/pull/461) ([smortex](https://github.com/smortex))
69
+ - Add support for \*BSD load averages [\#460](https://github.com/puppetlabs/facter-ng/pull/460) ([smortex](https://github.com/smortex))
70
+
71
+ ### Fixed
72
+
73
+ - \(FACT-2590\) No facts are displayed on Redhat 5 and Centos6 [\#484](https://github.com/puppetlabs/facter-ng/pull/484) ([IrimieBogdan](https://github.com/IrimieBogdan))
74
+ - \(FACT-2530\) Fix for tests/facts/os\_processors\_and\_kernel.rb [\#449](https://github.com/puppetlabs/facter-ng/pull/449) ([oanatmaria](https://github.com/oanatmaria))
75
+
76
+
77
+
78
+ ## [4.0.19](https://github.com/puppetlabs/facter-ng/tree/4.0.19) (2020-04-29)
79
+
80
+ [Full Changelog](https://github.com/puppetlabs/facter-ng/compare/4.0.18...4.0.19)
81
+
82
+ ### Added
83
+
84
+ - \(FACT-2555\)Create OS hierarchy and mechanism for loading it [\#470](https://github.com/puppetlabs/facter-ng/pull/470) ([IrimieBogdan](https://github.com/IrimieBogdan))
85
+ - \(FACT-2552\) Add Solaris processors facts [\#451](https://github.com/puppetlabs/facter-ng/pull/451) ([oanatmaria](https://github.com/oanatmaria))
86
+ - \(Fact 2486\) Add facts cache [\#430](https://github.com/puppetlabs/facter-ng/pull/430) ([florindragos](https://github.com/florindragos))
87
+
88
+ ### Fixed
89
+
90
+ - \(FACT-2585\) Mountpoints fact returns ASCI-8BIT instead of UTF-8 in some cases [\#472](https://github.com/puppetlabs/facter-ng/pull/472) ([IrimieBogdan](https://github.com/IrimieBogdan))
91
+ - \(FACT-2570\) Use Facter options to store custom and external facts [\#467](https://github.com/puppetlabs/facter-ng/pull/467) ([IrimieBogdan](https://github.com/IrimieBogdan))
92
+ - \(FACT-2565\) Debian development versions causes fatal error when resolving os.release [\#466](https://github.com/puppetlabs/facter-ng/pull/466) ([Filipovici-Andrei](https://github.com/Filipovici-Andrei))
93
+
94
+
95
+
96
+ ## [4.0.18](https://github.com/puppetlabs/facter-ng/tree/4.0.18) (2020-04-24)
97
+
98
+ [Full Changelog](https://github.com/puppetlabs/facter-ng/compare/4.0.17...4.0.18)
99
+
100
+ ### Added
101
+
102
+ - \(FACT-2564\) Add support for zpool\_featureflags and fix zpool\_version [\#443](https://github.com/puppetlabs/facter-ng/pull/443) ([smortex](https://github.com/smortex))
103
+
104
+ ### Fixed
105
+
106
+ - \(FACT-2553\) remove double backslashes from windows path [\#456](https://github.com/puppetlabs/facter-ng/pull/456) ([oanatmaria](https://github.com/oanatmaria))
107
+ - \(FACT-2559\) Fix Facter.debugging? call when Facter not fully loaded [\#455](https://github.com/puppetlabs/facter-ng/pull/455) ([Filipovici-Andrei](https://github.com/Filipovici-Andrei))
108
+
109
+
110
+
111
+ ## [4.0.17](https://github.com/puppetlabs/facter-ng/tree/4.0.17) (2020-04-21)
112
+
113
+ [Full Changelog](https://github.com/puppetlabs/facter-ng/compare/4.0.16...4.0.17)
114
+
115
+ ### Fixed
116
+
117
+ - \(FACT-2562\) Correctly load custom and external fact directories [\#458](https://github.com/puppetlabs/facter-ng/pull/458) ([IrimieBogdan](https://github.com/IrimieBogdan))
118
+
119
+
120
+
121
+ ## [4.0.16](https://github.com/puppetlabs/facter-ng/tree/4.0.16) (2020-04-15)
122
+
123
+ [Full Changelog](https://github.com/puppetlabs/facter-ng/compare/4.0.15...4.0.16)
124
+
125
+ ### Added
126
+
127
+ - \(FACT-2233\) Add AIX partitons fact [\#433](https://github.com/puppetlabs/facter-ng/pull/433) ([oanatmaria](https://github.com/oanatmaria))
128
+ - \(FACT-2330\) Add ssh fact for Windows OpenSSH feature [\#424](https://github.com/puppetlabs/facter-ng/pull/424) ([oanatmaria](https://github.com/oanatmaria))
129
+
130
+ ### Fixed
131
+
132
+ - \(FACT-2528\) Fix for tests/facts/ssh\_key.rb [\#442](https://github.com/puppetlabs/facter-ng/pull/442) ([oanatmaria](https://github.com/oanatmaria))
133
+ - \(FACT-2538\) Don't save core and legacy facts in collection if they have no value [\#441](https://github.com/puppetlabs/facter-ng/pull/441) ([IrimieBogdan](https://github.com/IrimieBogdan))
134
+
135
+
136
+
137
+ ## [4.0.15](https://github.com/puppetlabs/facter-ng/tree/4.0.15) (2020-04-08)
138
+
139
+ [Full Changelog](https://github.com/puppetlabs/facter-ng/compare/4.0.14...4.0.15)
140
+
141
+ ### Added
142
+
143
+ - \(FACT-2541\) Add TYPE for legacy facts [\#439](https://github.com/puppetlabs/facter-ng/pull/439) ([oanatmaria](https://github.com/oanatmaria))
144
+ - \(FACT-2535\) Allow interpolation of Facter.fact\('fact\_name'\) [\#435](https://github.com/puppetlabs/facter-ng/pull/435) ([sebastian-miclea](https://github.com/sebastian-miclea))
145
+ - \(FACT-2477\) Collect facts from alternative sources [\#422](https://github.com/puppetlabs/facter-ng/pull/422) ([oanatmaria](https://github.com/oanatmaria))
146
+
147
+ ### Fixed
148
+
149
+ - \(FACT-2513\) Updated how option aliases are displayed [\#434](https://github.com/puppetlabs/facter-ng/pull/434) ([sebastian-miclea](https://github.com/sebastian-miclea))
150
+ - \(FACT-2499\) Facts with aliases are resolved only once [\#429](https://github.com/puppetlabs/facter-ng/pull/429) ([IrimieBogdan](https://github.com/IrimieBogdan))
151
+
152
+
153
+
154
+ ## [4.0.14](https://github.com/puppetlabs/facter-ng/tree/4.0.14) (2020-04-01)
155
+
156
+ [Full Changelog](https://github.com/puppetlabs/facter-ng/compare/4.0.13...4.0.14)
157
+
158
+ ### Added
159
+
160
+ - \(FACT-2512\) Handle Raspbian as Debian [\#421](https://github.com/puppetlabs/facter-ng/pull/421) ([mlove-au](https://github.com/mlove-au))
161
+ - \(FACT-2231\) Add AIX mountpoints fact [\#398](https://github.com/puppetlabs/facter-ng/pull/398) ([oanatmaria](https://github.com/oanatmaria))
162
+ - \(FACT-2471\) Add Linux partitions fact [\#393](https://github.com/puppetlabs/facter-ng/pull/393) ([oanatmaria](https://github.com/oanatmaria))
163
+ - Debugger tool [\#391](https://github.com/puppetlabs/facter-ng/pull/391) ([sebastian-miclea](https://github.com/sebastian-miclea))
164
+ - \(FACT-2435\) Expose :expand as an option to execute command [\#342](https://github.com/puppetlabs/facter-ng/pull/342) ([florindragos](https://github.com/florindragos))
165
+
166
+ ### Fixed
167
+
168
+ - \(FACT-2511\) Remove file logger [\#425](https://github.com/puppetlabs/facter-ng/pull/425) ([IrimieBogdan](https://github.com/IrimieBogdan))
169
+ - \(FACT-2498\) Internal fact loader should only load facts once [\#420](https://github.com/puppetlabs/facter-ng/pull/420) ([IrimieBogdan](https://github.com/IrimieBogdan))
170
+ - Avoid exceptions for zone facts on FreeBSD [\#412](https://github.com/puppetlabs/facter-ng/pull/412) ([smortex](https://github.com/smortex))
171
+ - \(FACT-2475\) Fix os.release on Debian [\#410](https://github.com/puppetlabs/facter-ng/pull/410) ([oanatmaria](https://github.com/oanatmaria))
172
+
173
+
174
+
175
+ \* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
@@ -0,0 +1,2 @@
1
+ # Default to Ghost team
2
+ * @puppetlabs/ghost @puppetlabs/night-s-watch
@@ -0,0 +1,93 @@
1
+
2
+ # How to contribute
3
+
4
+ Third-party patches are essential for keeping facter great. We simply can't
5
+ access the huge number of platforms and myriad configurations for running
6
+ Facter. We want to keep it as easy as possible to contribute changes that
7
+ get things working in your environment. There are a few guidelines that we
8
+ need contributors to follow so that we can have a chance of keeping on
9
+ top of things.
10
+
11
+ ## Getting Started
12
+
13
+ * Make sure you have a [Jira account](https://tickets.puppetlabs.com).
14
+ * Make sure you have a [GitHub account](https://github.com/signup/free).
15
+ * Submit a Jira ticket for your issue if one does not already exist.
16
+ * Clearly describe the issue including steps to reproduce when it is a bug.
17
+ * Make sure you fill in the earliest version that you know has the issue.
18
+ * A ticket is not necessary for [trivial changes](https://puppet.com/community/trivial-patch-exemption-policy)
19
+ * Fork the repository on GitHub.
20
+
21
+ ## Making Changes
22
+
23
+ * Create a topic branch from where you want to base your work.
24
+ * This is usually the master branch.
25
+ * Once merged, your work will be automatically promoted to the other release
26
+ streams when our internal CI passes.
27
+ * To quickly create a topic branch based on master, run `git checkout -b
28
+ fix/master/my_contribution master`. Please avoid working directly on the
29
+ `master` branch.
30
+ * Make commits of logical units.
31
+ * Check for unnecessary whitespace with `git diff --check` before committing.
32
+ * Make sure your commit messages are in the proper format. We use the [50/72 rule](https://git-scm.com/book/en/v2/Distributed-Git-Contributing-to-a-Project) in commit messages.
33
+ * If the commit addresses an issue filed in the [Facter Jira project](https://tickets.puppetlabs.com/browse/FACT), start the first line of the commit with the issue number in parentheses.
34
+
35
+ ````
36
+ (FACT-1234) Make the example in CONTRIBUTING imperative and concrete
37
+
38
+ Without this patch applied the example commit message in the CONTRIBUTING
39
+ document is not a concrete example. This is a problem because the
40
+ contributor is left to imagine what the commit message should look like
41
+ based on a description rather than an example. This patch fixes the
42
+ problem by making the example concrete and imperative.
43
+
44
+ The first line is a real life imperative statement with a ticket number
45
+ from our issue tracker. The body describes the behavior without the patch,
46
+ why this is a problem, and how the patch fixes the problem when applied.
47
+ ````
48
+
49
+ * Make sure you have added the necessary tests for your changes.
50
+ * Run _all_ the tests to assure nothing else was accidentally broken.
51
+ * We recommend running `./check.sh` to have the same checks run as on github
52
+
53
+ ## Making Trivial Changes
54
+
55
+ For [changes of a trivial nature](https://puppet.com/community/trivial-patch-exemption-policy), it is not always necessary to create a new
56
+ ticket in Jira. In this case, it is appropriate to start the first line of a
57
+ commit with one of `(docs)` or `(maint)` instead of a ticket number.
58
+
59
+ If a Jira ticket exists for the documentation commit, you can include it
60
+ after the `(docs)` token.
61
+
62
+ ```
63
+ (docs)(DOCUMENT-000) Add docs commit example to CONTRIBUTING
64
+
65
+ There is no example for contributing a documentation commit
66
+ to the Facter repository. This is a problem because the contributor
67
+ is left to assume how a commit of this nature may appear.
68
+
69
+ The first line is a real-life imperative statement with '(docs)' in
70
+ place of what would have been the FACT project ticket number in a
71
+ non-documentation related commit. The body describes the nature of
72
+ the new documentation or comments added.
73
+ ```
74
+
75
+ For commits that address trivial repository maintenance tasks start the first line of the commit with `(maint)`
76
+
77
+ ## Submitting Changes
78
+
79
+ * Sign the [Contributor License Agreement](http://links.puppet.com/cla).
80
+ * Push your changes to a topic branch in your fork of the repository.
81
+ * Submit a pull request to the repository in the puppetlabs organization.
82
+ * Update your ticket to mark that you have submitted code and are ready for it to be reviewed.
83
+ * Include a link to the pull request in the ticket
84
+
85
+ # Additional Resources
86
+
87
+ * [Puppet community guidelines](https://puppet.com/community/community-guidelines/)
88
+ * [Bug tracker (Jira)](https://tickets.puppetlabs.com/browse/FACT)
89
+ * [Contributor License Agreement](http://links.puppet.com/cla)
90
+ * [General GitHub documentation](http://help.github.com/)
91
+ * [GitHub pull request documentation](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request-from-a-fork)
92
+ * [puppet-dev mailing list](https://groups.google.com/forum/#!forum/puppet-dev)
93
+ * [Puppet-dev Slack channel](https://puppetcommunity.slack.com/archives/C0W1X7ZAL)