facter 2.5.7-x86-mingw32 → 3.9.6.cfacter.20180606-x86-mingw32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (506) hide show
  1. checksums.yaml +5 -5
  2. data/bin/facter.bat +8 -0
  3. data/bin/facter.exe +0 -0
  4. data/bin/facter_interactive.bat +6 -0
  5. data/bin/libfacter.so +0 -0
  6. data/bin/run_facter_interactive.bat +9 -0
  7. data/lib/facter.rb +45 -261
  8. data/lib/libfacter.so.a +0 -0
  9. metadata +23 -854
  10. data/COMMITTERS.md +0 -185
  11. data/CONTRIBUTING.md +0 -91
  12. data/Gemfile +0 -69
  13. data/LICENSE +0 -15
  14. data/README.md +0 -65
  15. data/Rakefile +0 -46
  16. data/bin/facter +0 -20
  17. data/etc/facter.conf +0 -5
  18. data/ext/build_defaults.yaml +0 -9
  19. data/ext/debian/changelog.erb +0 -59
  20. data/ext/debian/compat +0 -1
  21. data/ext/debian/control +0 -15
  22. data/ext/debian/copyright +0 -19
  23. data/ext/debian/docs +0 -1
  24. data/ext/debian/lintian-overrides +0 -0
  25. data/ext/debian/rules +0 -10
  26. data/ext/debian/source/format +0 -1
  27. data/ext/facter-diff +0 -74
  28. data/ext/ips/facter.p5m.erb +0 -10
  29. data/ext/ips/rules +0 -7
  30. data/ext/ips/transforms +0 -18
  31. data/ext/osx/file_mapping.yaml +0 -32
  32. data/ext/osx/preflight.erb +0 -33
  33. data/ext/osx/prototype.plist.erb +0 -38
  34. data/ext/project_data.yaml +0 -31
  35. data/ext/redhat/facter.spec.erb +0 -223
  36. data/ext/solaris/pkginfo +0 -7
  37. data/install.rb +0 -380
  38. data/lib/facter/Cfkey.rb +0 -42
  39. data/lib/facter/application.rb +0 -206
  40. data/lib/facter/architecture.rb +0 -50
  41. data/lib/facter/augeasversion.rb +0 -28
  42. data/lib/facter/blockdevices.rb +0 -105
  43. data/lib/facter/core/aggregate.rb +0 -220
  44. data/lib/facter/core/directed_graph.rb +0 -46
  45. data/lib/facter/core/execution.rb +0 -123
  46. data/lib/facter/core/execution/base.rb +0 -81
  47. data/lib/facter/core/execution/posix.rb +0 -50
  48. data/lib/facter/core/execution/windows.rb +0 -57
  49. data/lib/facter/core/logging.rb +0 -197
  50. data/lib/facter/core/resolvable.rb +0 -94
  51. data/lib/facter/core/suitable.rb +0 -113
  52. data/lib/facter/dhcp_servers.rb +0 -45
  53. data/lib/facter/domain.rb +0 -99
  54. data/lib/facter/ec2.rb +0 -68
  55. data/lib/facter/ec2/rest.rb +0 -137
  56. data/lib/facter/facterversion.rb +0 -15
  57. data/lib/facter/filesystems.rb +0 -45
  58. data/lib/facter/fqdn.rb +0 -24
  59. data/lib/facter/gce.rb +0 -16
  60. data/lib/facter/gce/metadata.rb +0 -87
  61. data/lib/facter/gid.rb +0 -25
  62. data/lib/facter/hardwareisa.rb +0 -20
  63. data/lib/facter/hardwaremodel.rb +0 -67
  64. data/lib/facter/hostname.rb +0 -31
  65. data/lib/facter/id.rb +0 -21
  66. data/lib/facter/interfaces.rb +0 -58
  67. data/lib/facter/ipaddress.rb +0 -169
  68. data/lib/facter/ipaddress6.rb +0 -82
  69. data/lib/facter/iphostnumber.rb +0 -29
  70. data/lib/facter/kernel.rb +0 -22
  71. data/lib/facter/kernelmajversion.rb +0 -23
  72. data/lib/facter/kernelrelease.rb +0 -45
  73. data/lib/facter/kernelversion.rb +0 -22
  74. data/lib/facter/ldom.rb +0 -51
  75. data/lib/facter/lsbdistcodename.rb +0 -20
  76. data/lib/facter/lsbdistdescription.rb +0 -21
  77. data/lib/facter/lsbdistid.rb +0 -20
  78. data/lib/facter/lsbdistrelease.rb +0 -20
  79. data/lib/facter/lsbmajdistrelease.rb +0 -22
  80. data/lib/facter/lsbminordistrelease.rb +0 -22
  81. data/lib/facter/lsbrelease.rb +0 -20
  82. data/lib/facter/macaddress.rb +0 -99
  83. data/lib/facter/macosx.rb +0 -56
  84. data/lib/facter/manufacturer.rb +0 -68
  85. data/lib/facter/memory.rb +0 -168
  86. data/lib/facter/netmask.rb +0 -43
  87. data/lib/facter/network.rb +0 -20
  88. data/lib/facter/operatingsystem.rb +0 -24
  89. data/lib/facter/operatingsystem/base.rb +0 -61
  90. data/lib/facter/operatingsystem/cumuluslinux.rb +0 -27
  91. data/lib/facter/operatingsystem/implementation.rb +0 -33
  92. data/lib/facter/operatingsystem/linux.rb +0 -511
  93. data/lib/facter/operatingsystem/osreleaselinux.rb +0 -28
  94. data/lib/facter/operatingsystem/sunos.rb +0 -54
  95. data/lib/facter/operatingsystem/vmkernel.rb +0 -11
  96. data/lib/facter/operatingsystem/windows.rb +0 -43
  97. data/lib/facter/operatingsystemmajrelease.rb +0 -31
  98. data/lib/facter/operatingsystemrelease.rb +0 -29
  99. data/lib/facter/os.rb +0 -98
  100. data/lib/facter/osfamily.rb +0 -18
  101. data/lib/facter/partitions.rb +0 -39
  102. data/lib/facter/path.rb +0 -14
  103. data/lib/facter/physicalprocessorcount.rb +0 -27
  104. data/lib/facter/processor.rb +0 -52
  105. data/lib/facter/processors.rb +0 -66
  106. data/lib/facter/processors/os.rb +0 -244
  107. data/lib/facter/ps.rb +0 -31
  108. data/lib/facter/puppetversion.rb +0 -20
  109. data/lib/facter/rackspace.rb +0 -37
  110. data/lib/facter/rubyplatform.rb +0 -12
  111. data/lib/facter/rubysitedir.rb +0 -15
  112. data/lib/facter/rubyversion.rb +0 -12
  113. data/lib/facter/selinux.rb +0 -154
  114. data/lib/facter/ssh.rb +0 -73
  115. data/lib/facter/system32.rb +0 -21
  116. data/lib/facter/system_uptime.rb +0 -44
  117. data/lib/facter/timezone.rb +0 -14
  118. data/lib/facter/uniqueid.rb +0 -4
  119. data/lib/facter/uptime.rb +0 -16
  120. data/lib/facter/uptime_days.rb +0 -13
  121. data/lib/facter/uptime_hours.rb +0 -13
  122. data/lib/facter/uptime_seconds.rb +0 -20
  123. data/lib/facter/util/architecture.rb +0 -19
  124. data/lib/facter/util/collection.rb +0 -161
  125. data/lib/facter/util/composite_loader.rb +0 -12
  126. data/lib/facter/util/config.rb +0 -88
  127. data/lib/facter/util/confine.rb +0 -66
  128. data/lib/facter/util/dhcp_servers.rb +0 -58
  129. data/lib/facter/util/directory_loader.rb +0 -88
  130. data/lib/facter/util/ec2.rb +0 -106
  131. data/lib/facter/util/fact.rb +0 -204
  132. data/lib/facter/util/file_read.rb +0 -37
  133. data/lib/facter/util/formatter.rb +0 -39
  134. data/lib/facter/util/ip.rb +0 -340
  135. data/lib/facter/util/ip/windows.rb +0 -215
  136. data/lib/facter/util/loader.rb +0 -155
  137. data/lib/facter/util/macaddress.rb +0 -43
  138. data/lib/facter/util/macosx.rb +0 -73
  139. data/lib/facter/util/manufacturer.rb +0 -99
  140. data/lib/facter/util/memory.rb +0 -228
  141. data/lib/facter/util/netmask.rb +0 -40
  142. data/lib/facter/util/normalization.rb +0 -94
  143. data/lib/facter/util/nothing_loader.rb +0 -12
  144. data/lib/facter/util/operatingsystem.rb +0 -21
  145. data/lib/facter/util/parser.rb +0 -168
  146. data/lib/facter/util/partitions.rb +0 -47
  147. data/lib/facter/util/partitions/linux.rb +0 -71
  148. data/lib/facter/util/partitions/openbsd.rb +0 -40
  149. data/lib/facter/util/plist.rb +0 -24
  150. data/lib/facter/util/plist/generator.rb +0 -228
  151. data/lib/facter/util/plist/parser.rb +0 -226
  152. data/lib/facter/util/posix.rb +0 -16
  153. data/lib/facter/util/processor.rb +0 -289
  154. data/lib/facter/util/registry.rb +0 -11
  155. data/lib/facter/util/resolution.rb +0 -160
  156. data/lib/facter/util/solaris_zones.rb +0 -158
  157. data/lib/facter/util/unix_root.rb +0 -5
  158. data/lib/facter/util/uptime.rb +0 -83
  159. data/lib/facter/util/values.rb +0 -109
  160. data/lib/facter/util/virtual.rb +0 -220
  161. data/lib/facter/util/vlans.rb +0 -21
  162. data/lib/facter/util/windows.rb +0 -10
  163. data/lib/facter/util/windows/api_types.rb +0 -135
  164. data/lib/facter/util/windows/dir.rb +0 -43
  165. data/lib/facter/util/windows/error.rb +0 -87
  166. data/lib/facter/util/windows/process.rb +0 -294
  167. data/lib/facter/util/windows/user.rb +0 -186
  168. data/lib/facter/util/windows_root.rb +0 -7
  169. data/lib/facter/util/wmi.rb +0 -49
  170. data/lib/facter/util/xendomains.rb +0 -28
  171. data/lib/facter/version.rb +0 -86
  172. data/lib/facter/virtual.rb +0 -339
  173. data/lib/facter/vlans.rb +0 -17
  174. data/lib/facter/xendomains.rb +0 -20
  175. data/lib/facter/zfs_version.rb +0 -14
  176. data/lib/facter/zonename.rb +0 -6
  177. data/lib/facter/zones.rb +0 -18
  178. data/lib/facter/zpool_version.rb +0 -10
  179. data/spec/fixtures/cpuinfo/amd64dual +0 -57
  180. data/spec/fixtures/cpuinfo/amd64dual-grep +0 -2
  181. data/spec/fixtures/cpuinfo/amd64quad +0 -79
  182. data/spec/fixtures/cpuinfo/amd64solo +0 -23
  183. data/spec/fixtures/cpuinfo/amd64tri +0 -86
  184. data/spec/fixtures/cpuinfo/amd64twentyfour +0 -600
  185. data/spec/fixtures/cpuinfo/amd64twentyfour-grep +0 -24
  186. data/spec/fixtures/cpuinfo/bbg3-armel +0 -12
  187. data/spec/fixtures/cpuinfo/beaglexm-armel +0 -12
  188. data/spec/fixtures/cpuinfo/panda-armel +0 -17
  189. data/spec/fixtures/cpuinfo/ppc64 +0 -19
  190. data/spec/fixtures/cpuinfo/ppc64le +0 -15
  191. data/spec/fixtures/cpuinfo/sparc +0 -10
  192. data/spec/fixtures/cpuinfo/two_multicore-grep +0 -4
  193. data/spec/fixtures/cpuinfo/two_singlecore-grep +0 -2
  194. data/spec/fixtures/hpux/machinfo/hppa-rp4440 +0 -26
  195. data/spec/fixtures/hpux/machinfo/ia64-rx2620 +0 -49
  196. data/spec/fixtures/hpux/machinfo/ia64-rx6600 +0 -26
  197. data/spec/fixtures/hpux/machinfo/ia64-rx8640 +0 -53
  198. data/spec/fixtures/hpux/machinfo/superdome-server-SD32B +0 -53
  199. data/spec/fixtures/hpux/machinfo/superdome2-16s +0 -31
  200. data/spec/fixtures/hpux/sched.models +0 -174
  201. data/spec/fixtures/hpux/unistd.h +0 -1534
  202. data/spec/fixtures/ifconfig/bsd_ifconfig_all_with_multiple_interfaces +0 -18
  203. data/spec/fixtures/ifconfig/centos_5_5 +0 -17
  204. data/spec/fixtures/ifconfig/centos_5_5_eth0 +0 -8
  205. data/spec/fixtures/ifconfig/darwin_10_3_0 +0 -26
  206. data/spec/fixtures/ifconfig/darwin_10_3_0_en0 +0 -6
  207. data/spec/fixtures/ifconfig/darwin_10_6_4 +0 -28
  208. data/spec/fixtures/ifconfig/darwin_10_6_4_en1 +0 -6
  209. data/spec/fixtures/ifconfig/darwin_10_6_6_dualstack +0 -8
  210. data/spec/fixtures/ifconfig/darwin_10_6_6_dualstack_en1 +0 -7
  211. data/spec/fixtures/ifconfig/darwin_9_8_0 +0 -26
  212. data/spec/fixtures/ifconfig/darwin_9_8_0_en0 +0 -6
  213. data/spec/fixtures/ifconfig/darwin_ifconfig_all_with_multiple_interfaces +0 -23
  214. data/spec/fixtures/ifconfig/fedora_10 +0 -36
  215. data/spec/fixtures/ifconfig/fedora_10_eth0 +0 -9
  216. data/spec/fixtures/ifconfig/fedora_13 +0 -18
  217. data/spec/fixtures/ifconfig/fedora_13_eth0 +0 -9
  218. data/spec/fixtures/ifconfig/fedora_8 +0 -38
  219. data/spec/fixtures/ifconfig/fedora_8_eth0 +0 -9
  220. data/spec/fixtures/ifconfig/freebsd_6_0 +0 -12
  221. data/spec/fixtures/ifconfig/ifconfig_net_tools_1.60.txt +0 -19
  222. data/spec/fixtures/ifconfig/ifconfig_ubuntu_1204.txt +0 -16
  223. data/spec/fixtures/ifconfig/linux_ifconfig_all_with_multiple_interfaces +0 -19
  224. data/spec/fixtures/ifconfig/linux_ifconfig_all_with_multiple_interfaces_and_fe80 +0 -19
  225. data/spec/fixtures/ifconfig/linux_ifconfig_all_with_multiple_interfaces_and_no_public_ipv6 +0 -18
  226. data/spec/fixtures/ifconfig/linux_ifconfig_no_addr +0 -19
  227. data/spec/fixtures/ifconfig/linux_ifconfig_no_mac +0 -8
  228. data/spec/fixtures/ifconfig/linux_ifconfig_venet +0 -24
  229. data/spec/fixtures/ifconfig/open_solaris_10 +0 -12
  230. data/spec/fixtures/ifconfig/open_solaris_b132 +0 -20
  231. data/spec/fixtures/ifconfig/openbsd_bridge_rules +0 -11
  232. data/spec/fixtures/ifconfig/sunos_ifconfig_all_with_multiple_interfaces +0 -10
  233. data/spec/fixtures/ifconfig/ubuntu_7_04 +0 -38
  234. data/spec/fixtures/ifconfig/ubuntu_7_04_eth0 +0 -9
  235. data/spec/fixtures/ldom/ldom_v1 +0 -6
  236. data/spec/fixtures/netstat/centos_5_5 +0 -5
  237. data/spec/fixtures/netstat/darwin_10_3_0 +0 -35
  238. data/spec/fixtures/netstat/darwin_10_6_4 +0 -29
  239. data/spec/fixtures/netstat/darwin_10_6_6_dualstack +0 -34
  240. data/spec/fixtures/netstat/darwin_9_8_0 +0 -28
  241. data/spec/fixtures/netstat/fedora_10 +0 -7
  242. data/spec/fixtures/netstat/open_solaris_10 +0 -16
  243. data/spec/fixtures/netstat/open_solaris_b132 +0 -17
  244. data/spec/fixtures/netstat/ubuntu_7_04 +0 -7
  245. data/spec/fixtures/processorcount/solaris-psrinfo +0 -24
  246. data/spec/fixtures/processorcount/solaris-sparc-kstat-cpu-info +0 -1216
  247. data/spec/fixtures/processorcount/solaris-x86_64-kstat-cpu-info +0 -225
  248. data/spec/fixtures/unit/dhcp_servers/nmcli_devices +0 -4
  249. data/spec/fixtures/unit/dhcp_servers/nmcli_devices_disconnected +0 -4
  250. data/spec/fixtures/unit/dhcp_servers/nmcli_eth0_dhcp +0 -36
  251. data/spec/fixtures/unit/dhcp_servers/nmcli_eth0_static +0 -24
  252. data/spec/fixtures/unit/dhcp_servers/nmcli_wlan0_dhcp +0 -49
  253. data/spec/fixtures/unit/dhcp_servers/nmcli_wlan0_static +0 -37
  254. data/spec/fixtures/unit/dhcp_servers/route +0 -3
  255. data/spec/fixtures/unit/dhcp_servers/route_nogw +0 -1
  256. data/spec/fixtures/unit/ec2/rest/meta-data/root +0 -20
  257. data/spec/fixtures/unit/filesystems/linux +0 -28
  258. data/spec/fixtures/unit/gce/metadata/metadata.json +0 -69
  259. data/spec/fixtures/unit/interfaces/ifconfig_net_tools_1.60.txt +0 -19
  260. data/spec/fixtures/unit/interfaces/ifconfig_net_tools_1.60.txt.em1 +0 -10
  261. data/spec/fixtures/unit/interfaces/ifconfig_net_tools_1.60.txt.lo +0 -8
  262. data/spec/fixtures/unit/interfaces/ifconfig_net_tools_1.60_v6.txt +0 -9
  263. data/spec/fixtures/unit/ipaddress/ifconfig_multiple_127_addresses.txt +0 -20
  264. data/spec/fixtures/unit/ipaddress/ifconfig_net_tools_1.60.txt +0 -19
  265. data/spec/fixtures/unit/ipaddress/ifconfig_non_english_locale.txt +0 -18
  266. data/spec/fixtures/unit/ipaddress/ifconfig_ubuntu_1204.txt +0 -16
  267. data/spec/fixtures/unit/kernelrelease/openbsd-5.3 +0 -2
  268. data/spec/fixtures/unit/kernelrelease/openbsd-5.3-current +0 -3
  269. data/spec/fixtures/unit/memory/aix-svmon +0 -9
  270. data/spec/fixtures/unit/memory/aix-swap_l +0 -2
  271. data/spec/fixtures/unit/memory/darwin-swapinfo-multiple +0 -3
  272. data/spec/fixtures/unit/memory/darwin-swapinfo-single +0 -2
  273. data/spec/fixtures/unit/memory/darwin-vm_stat +0 -13
  274. data/spec/fixtures/unit/memory/dragonfly-vmstat +0 -3
  275. data/spec/fixtures/unit/memory/freebsd-vmstat +0 -3
  276. data/spec/fixtures/unit/memory/linux-proc_meminfo +0 -10
  277. data/spec/fixtures/unit/memory/openbsd-vmstat +0 -3
  278. data/spec/fixtures/unit/memory/smartos_zone_swap_l-single +0 -2
  279. data/spec/fixtures/unit/memory/solaris-prtconf +0 -4
  280. data/spec/fixtures/unit/memory/solaris-swap_l-multiple +0 -3
  281. data/spec/fixtures/unit/memory/solaris-swap_l-single +0 -2
  282. data/spec/fixtures/unit/memory/solaris-vmstat +0 -3
  283. data/spec/fixtures/unit/netmask/darwin_10_8_5.txt +0 -30
  284. data/spec/fixtures/unit/netmask/ifconfig_aix_7.txt +0 -3
  285. data/spec/fixtures/unit/netmask/ifconfig_net_tools_1.60.txt +0 -19
  286. data/spec/fixtures/unit/netmask/ifconfig_ubuntu_1204.txt +0 -16
  287. data/spec/fixtures/unit/processors/os/darwin-system-profiler +0 -287
  288. data/spec/fixtures/unit/selinux/selinux_sestatus +0 -6
  289. data/spec/fixtures/unit/selinux/selinux_sestatus2 +0 -9
  290. data/spec/fixtures/unit/util/dhcp_servers/route +0 -3
  291. data/spec/fixtures/unit/util/dhcp_servers/route_nogw +0 -1
  292. data/spec/fixtures/unit/util/ec2/centos-arp-ec2.out +0 -1
  293. data/spec/fixtures/unit/util/ec2/linux-arp-ec2.out +0 -1
  294. data/spec/fixtures/unit/util/ec2/linux-arp-not-ec2.out +0 -5
  295. data/spec/fixtures/unit/util/ec2/solaris8_arp_a_not_ec2.out +0 -7
  296. data/spec/fixtures/unit/util/ec2/windows-2008-arp-a-not-ec2.out +0 -6
  297. data/spec/fixtures/unit/util/ec2/windows-2008-arp-a.out +0 -10
  298. data/spec/fixtures/unit/util/ip/6.0-STABLE_FreeBSD_ifconfig +0 -12
  299. data/spec/fixtures/unit/util/ip/Mac_OS_X_10.5.5_ifconfig +0 -26
  300. data/spec/fixtures/unit/util/ip/darwin_ifconfig_all_with_multiple_interfaces +0 -10
  301. data/spec/fixtures/unit/util/ip/darwin_ifconfig_single_interface +0 -6
  302. data/spec/fixtures/unit/util/ip/debian_kfreebsd_ifconfig +0 -40
  303. data/spec/fixtures/unit/util/ip/hpux_1111_ifconfig_lan0 +0 -2
  304. data/spec/fixtures/unit/util/ip/hpux_1111_ifconfig_lan1 +0 -2
  305. data/spec/fixtures/unit/util/ip/hpux_1111_ifconfig_lo0 +0 -2
  306. data/spec/fixtures/unit/util/ip/hpux_1111_lanscan +0 -5
  307. data/spec/fixtures/unit/util/ip/hpux_1111_netstat_in +0 -4
  308. data/spec/fixtures/unit/util/ip/hpux_1131_asterisk_ifconfig_lan0 +0 -2
  309. data/spec/fixtures/unit/util/ip/hpux_1131_asterisk_ifconfig_lan1 +0 -2
  310. data/spec/fixtures/unit/util/ip/hpux_1131_asterisk_ifconfig_lo0 +0 -2
  311. data/spec/fixtures/unit/util/ip/hpux_1131_asterisk_lanscan +0 -5
  312. data/spec/fixtures/unit/util/ip/hpux_1131_asterisk_netstat_in +0 -4
  313. data/spec/fixtures/unit/util/ip/hpux_1131_ifconfig_lan0 +0 -2
  314. data/spec/fixtures/unit/util/ip/hpux_1131_ifconfig_lan1 +0 -2
  315. data/spec/fixtures/unit/util/ip/hpux_1131_ifconfig_lo0 +0 -2
  316. data/spec/fixtures/unit/util/ip/hpux_1131_lanscan +0 -4
  317. data/spec/fixtures/unit/util/ip/hpux_1131_netstat_in +0 -4
  318. data/spec/fixtures/unit/util/ip/hpux_1131_nic_bonding_ifconfig_lan1 +0 -2
  319. data/spec/fixtures/unit/util/ip/hpux_1131_nic_bonding_ifconfig_lan4 +0 -2
  320. data/spec/fixtures/unit/util/ip/hpux_1131_nic_bonding_ifconfig_lan4_1 +0 -2
  321. data/spec/fixtures/unit/util/ip/hpux_1131_nic_bonding_ifconfig_lo0 +0 -2
  322. data/spec/fixtures/unit/util/ip/hpux_1131_nic_bonding_lanscan +0 -9
  323. data/spec/fixtures/unit/util/ip/hpux_1131_nic_bonding_netstat_in +0 -6
  324. data/spec/fixtures/unit/util/ip/linux_2_6_35_proc_net_bonding_bond0 +0 -19
  325. data/spec/fixtures/unit/util/ip/linux_get_single_interface_eth0 +0 -10
  326. data/spec/fixtures/unit/util/ip/linux_get_single_interface_ib0 +0 -8
  327. data/spec/fixtures/unit/util/ip/linux_get_single_interface_ib0_centos7 +0 -8
  328. data/spec/fixtures/unit/util/ip/linux_get_single_interface_lo +0 -9
  329. data/spec/fixtures/unit/util/ip/linux_ifconfig_all_with_single_interface +0 -18
  330. data/spec/fixtures/unit/util/ip/linux_ifconfig_ib0 +0 -8
  331. data/spec/fixtures/unit/util/ip/linux_ifconfig_ib0_centos7 +0 -8
  332. data/spec/fixtures/unit/util/ip/solaris_ifconfig_all_with_multiple_interfaces +0 -8
  333. data/spec/fixtures/unit/util/ip/solaris_ifconfig_single_interface +0 -3
  334. data/spec/fixtures/unit/util/ip/windows_netsh_all_interfaces +0 -12
  335. data/spec/fixtures/unit/util/ip/windows_netsh_single_interface +0 -7
  336. data/spec/fixtures/unit/util/ip/windows_netsh_single_interface6 +0 -18
  337. data/spec/fixtures/unit/util/manufacturer/freebsd_dmidecode +0 -42
  338. data/spec/fixtures/unit/util/manufacturer/intel_linux_dmidecode +0 -549
  339. data/spec/fixtures/unit/util/manufacturer/linux_dmidecode_with_spaces +0 -60
  340. data/spec/fixtures/unit/util/manufacturer/opensolaris_smbios +0 -33
  341. data/spec/fixtures/unit/util/manufacturer/smartos_smbios +0 -533
  342. data/spec/fixtures/unit/util/manufacturer/solaris_sunfire_v120_prtdiag +0 -33
  343. data/spec/fixtures/unit/util/manufacturer/solaris_t5220_prtdiag +0 -136
  344. data/spec/fixtures/unit/util/operatingsystem/coreos.txt +0 -9
  345. data/spec/fixtures/unit/util/operatingsystem/cumuluslinux.txt +0 -8
  346. data/spec/fixtures/unit/util/operatingsystem/redhat-7.txt +0 -12
  347. data/spec/fixtures/unit/util/operatingsystem/sabayon.txt +0 -7
  348. data/spec/fixtures/unit/util/operatingsystem/wheezy.txt +0 -9
  349. data/spec/fixtures/unit/util/partitions/partitions/mount +0 -9
  350. data/spec/fixtures/unit/util/processor/solaris-i86pc +0 -28
  351. data/spec/fixtures/unit/util/processor/solaris-sun4u +0 -151
  352. data/spec/fixtures/unit/util/processor/x86-pentium2 +0 -41
  353. data/spec/fixtures/unit/util/uptime/kstat_boot_time +0 -1
  354. data/spec/fixtures/unit/util/uptime/sysctl_kern_boottime_darwin +0 -1
  355. data/spec/fixtures/unit/util/uptime/sysctl_kern_boottime_openbsd +0 -1
  356. data/spec/fixtures/unit/util/uptime/ubuntu_proc_uptime +0 -1
  357. data/spec/fixtures/unit/util/virtual/invalid_unicode_dmi_entries +0 -0
  358. data/spec/fixtures/unit/util/virtual/solaris10_proc_self_status1 +0 -0
  359. data/spec/fixtures/unit/util/vlans/centos-5-no-vlans +0 -2
  360. data/spec/fixtures/unit/util/vlans/linux_vlan_config +0 -6
  361. data/spec/fixtures/unit/util/xendomains/xendomains +0 -4
  362. data/spec/fixtures/unit/virtual/sysfs_dmi_entries_raw.txt +0 -0
  363. data/spec/fixtures/unit/zfs_version/freebsd_8.2 +0 -14
  364. data/spec/fixtures/unit/zfs_version/freebsd_9.0 +0 -13
  365. data/spec/fixtures/unit/zfs_version/linux-fuse_0.6.9 +0 -14
  366. data/spec/fixtures/unit/zfs_version/solaris_10 +0 -10
  367. data/spec/fixtures/unit/zfs_version/solaris_11 +0 -12
  368. data/spec/fixtures/unit/zfs_version/zfs_new +0 -61
  369. data/spec/fixtures/unit/zfs_version/zfs_old +0 -43
  370. data/spec/fixtures/unit/zfs_version/zfsonlinux_0.6.1 +0 -13
  371. data/spec/fixtures/unit/zpool_version/freebsd_8.2 +0 -26
  372. data/spec/fixtures/unit/zpool_version/freebsd_9.0 +0 -38
  373. data/spec/fixtures/unit/zpool_version/linux-fuse_0.6.9 +0 -35
  374. data/spec/fixtures/unit/zpool_version/solaris_10 +0 -31
  375. data/spec/fixtures/unit/zpool_version/solaris_11 +0 -43
  376. data/spec/fixtures/unit/zpool_version/zfsonlinux_0.6.1 +0 -48
  377. data/spec/fixtures/virtual/proc_1_cgroup/in_a_container +0 -9
  378. data/spec/fixtures/virtual/proc_1_cgroup/in_a_docker_container +0 -8
  379. data/spec/fixtures/virtual/proc_1_cgroup/in_a_docker_container_with_systemd_slices +0 -10
  380. data/spec/fixtures/virtual/proc_1_cgroup/not_in_a_container +0 -9
  381. data/spec/fixtures/virtual/proc_self_status/vserver_2_1/guest +0 -37
  382. data/spec/fixtures/virtual/proc_self_status/vserver_2_1/host +0 -36
  383. data/spec/fixtures/virtual/proc_self_status/vserver_2_3/guest +0 -39
  384. data/spec/fixtures/virtual/proc_self_status/vserver_2_3/host +0 -39
  385. data/spec/integration/facter_spec.rb +0 -39
  386. data/spec/integration/util/windows/user_spec.rb +0 -59
  387. data/spec/lib/facter_spec/cpuinfo.rb +0 -15
  388. data/spec/lib/facter_spec/windows_network.rb +0 -64
  389. data/spec/puppetlabs_spec/files.rb +0 -57
  390. data/spec/puppetlabs_spec/fixtures.rb +0 -49
  391. data/spec/puppetlabs_spec/matchers.rb +0 -87
  392. data/spec/puppetlabs_spec/verbose.rb +0 -9
  393. data/spec/puppetlabs_spec_helper.rb +0 -26
  394. data/spec/schema/validate_facter_schema.rb +0 -18
  395. data/spec/shared_contexts/platform.rb +0 -55
  396. data/spec/shared_formats/parses.rb +0 -3
  397. data/spec/spec_helper.rb +0 -68
  398. data/spec/unit/application_spec.rb +0 -110
  399. data/spec/unit/architecture_spec.rb +0 -63
  400. data/spec/unit/blockdevices_spec.rb +0 -109
  401. data/spec/unit/core/aggregate_spec.rb +0 -125
  402. data/spec/unit/core/directed_graph_spec.rb +0 -79
  403. data/spec/unit/core/execution/base_spec.rb +0 -130
  404. data/spec/unit/core/execution/posix_spec.rb +0 -96
  405. data/spec/unit/core/execution/windows_spec.rb +0 -106
  406. data/spec/unit/core/execution_spec.rb +0 -42
  407. data/spec/unit/core/logging_spec.rb +0 -223
  408. data/spec/unit/core/resolvable_spec.rb +0 -81
  409. data/spec/unit/core/suitable_spec.rb +0 -106
  410. data/spec/unit/dhcp_servers_spec.rb +0 -212
  411. data/spec/unit/domain_spec.rb +0 -310
  412. data/spec/unit/ec2/rest_spec.rb +0 -168
  413. data/spec/unit/ec2_spec.rb +0 -139
  414. data/spec/unit/facter_spec.rb +0 -108
  415. data/spec/unit/filesystems_spec.rb +0 -50
  416. data/spec/unit/fqdn_spec.rb +0 -16
  417. data/spec/unit/gce/metadata_spec.rb +0 -49
  418. data/spec/unit/gce_spec.rb +0 -34
  419. data/spec/unit/gid_spec.rb +0 -51
  420. data/spec/unit/hardwareisa_spec.rb +0 -41
  421. data/spec/unit/hardwaremodel_spec.rb +0 -58
  422. data/spec/unit/hostname_spec.rb +0 -40
  423. data/spec/unit/id_spec.rb +0 -29
  424. data/spec/unit/interfaces_spec.rb +0 -67
  425. data/spec/unit/ipaddress6_spec.rb +0 -180
  426. data/spec/unit/ipaddress_spec.rb +0 -114
  427. data/spec/unit/kernel_spec.rb +0 -24
  428. data/spec/unit/kernelmajversion_spec.rb +0 -22
  429. data/spec/unit/kernelrelease_spec.rb +0 -66
  430. data/spec/unit/kernelversion_spec.rb +0 -32
  431. data/spec/unit/ldom_spec.rb +0 -84
  432. data/spec/unit/lsbdistcodename_spec.rb +0 -30
  433. data/spec/unit/lsbdistdescription_spec.rb +0 -30
  434. data/spec/unit/lsbdistid_spec.rb +0 -30
  435. data/spec/unit/lsbdistrelease_spec.rb +0 -30
  436. data/spec/unit/lsbmajdistrelease_spec.rb +0 -30
  437. data/spec/unit/lsbminordistrelease_spec.rb +0 -31
  438. data/spec/unit/lsbrelease_spec.rb +0 -30
  439. data/spec/unit/macaddress_spec.rb +0 -76
  440. data/spec/unit/manufacturer_spec.rb +0 -115
  441. data/spec/unit/memory_spec.rb +0 -470
  442. data/spec/unit/netmask_spec.rb +0 -106
  443. data/spec/unit/operatingsystem/base_spec.rb +0 -76
  444. data/spec/unit/operatingsystem/cumuluslinux_spec.rb +0 -40
  445. data/spec/unit/operatingsystem/implementation_spec.rb +0 -50
  446. data/spec/unit/operatingsystem/linux_spec.rb +0 -559
  447. data/spec/unit/operatingsystem/sunos_spec.rb +0 -143
  448. data/spec/unit/operatingsystem/vmkernel_spec.rb +0 -13
  449. data/spec/unit/operatingsystem/windows_spec.rb +0 -77
  450. data/spec/unit/operatingsystem_spec.rb +0 -17
  451. data/spec/unit/operatingsystemmajrelease_spec.rb +0 -21
  452. data/spec/unit/operatingsystemrelease_spec.rb +0 -20
  453. data/spec/unit/os_spec.rb +0 -131
  454. data/spec/unit/osfamily_spec.rb +0 -17
  455. data/spec/unit/partitions_spec.rb +0 -88
  456. data/spec/unit/physicalprocessorcount_spec.rb +0 -13
  457. data/spec/unit/processor_spec.rb +0 -38
  458. data/spec/unit/processors/os_spec.rb +0 -469
  459. data/spec/unit/processors_spec.rb +0 -203
  460. data/spec/unit/ps_spec.rb +0 -42
  461. data/spec/unit/rackspace_spec.rb +0 -40
  462. data/spec/unit/rubyplatform_spec.rb +0 -7
  463. data/spec/unit/selinux_spec.rb +0 -119
  464. data/spec/unit/ssh_spec.rb +0 -77
  465. data/spec/unit/system32_spec.rb +0 -28
  466. data/spec/unit/system_uptime_spec.rb +0 -80
  467. data/spec/unit/uniqueid_spec.rb +0 -27
  468. data/spec/unit/uptime_spec.rb +0 -110
  469. data/spec/unit/util/collection_spec.rb +0 -258
  470. data/spec/unit/util/config_spec.rb +0 -120
  471. data/spec/unit/util/confine_spec.rb +0 -148
  472. data/spec/unit/util/dhcp_servers_spec.rb +0 -63
  473. data/spec/unit/util/directory_loader_spec.rb +0 -102
  474. data/spec/unit/util/ec2_spec.rb +0 -184
  475. data/spec/unit/util/fact_spec.rb +0 -142
  476. data/spec/unit/util/file_read_spec.rb +0 -29
  477. data/spec/unit/util/formatter_spec.rb +0 -55
  478. data/spec/unit/util/ip/windows_spec.rb +0 -80
  479. data/spec/unit/util/ip_spec.rb +0 -487
  480. data/spec/unit/util/loader_spec.rb +0 -286
  481. data/spec/unit/util/macaddress_spec.rb +0 -143
  482. data/spec/unit/util/macosx_spec.rb +0 -114
  483. data/spec/unit/util/manufacturer_spec.rb +0 -223
  484. data/spec/unit/util/normalization_spec.rb +0 -113
  485. data/spec/unit/util/operatingsystem_spec.rb +0 -107
  486. data/spec/unit/util/parser_spec.rb +0 -233
  487. data/spec/unit/util/partitions/partitions_spec.rb +0 -67
  488. data/spec/unit/util/partitions_spec.rb +0 -19
  489. data/spec/unit/util/posix_spec.rb +0 -11
  490. data/spec/unit/util/processor_spec.rb +0 -212
  491. data/spec/unit/util/registry_spec.rb +0 -76
  492. data/spec/unit/util/resolution_spec.rb +0 -129
  493. data/spec/unit/util/solaris_zones_spec.rb +0 -127
  494. data/spec/unit/util/uptime_spec.rb +0 -131
  495. data/spec/unit/util/values_spec.rb +0 -171
  496. data/spec/unit/util/virtual_spec.rb +0 -393
  497. data/spec/unit/util/vlans_spec.rb +0 -42
  498. data/spec/unit/util/wmi_spec.rb +0 -19
  499. data/spec/unit/util/xendomains_spec.rb +0 -114
  500. data/spec/unit/version_spec.rb +0 -42
  501. data/spec/unit/virtual_spec.rb +0 -585
  502. data/spec/unit/zfs_version_spec.rb +0 -87
  503. data/spec/unit/zonename_spec.rb +0 -14
  504. data/spec/unit/zones_spec.rb +0 -55
  505. data/spec/unit/zpool_version_spec.rb +0 -80
  506. data/spec/watchr.rb +0 -125
@@ -1,155 +0,0 @@
1
- require 'facter'
2
- require 'pathname'
3
- require 'facter/util/directory_loader'
4
-
5
- # Load facts on demand.
6
- class Facter::Util::Loader
7
-
8
- def initialize(environment_vars = ENV)
9
- @loaded = []
10
- @environment_vars = environment_vars
11
- end
12
-
13
- # Load all resolutions for a single fact.
14
- #
15
- # @api public
16
- # @param name [Symbol]
17
- def load(fact)
18
- # Now load from the search path
19
- shortname = fact.to_s.downcase
20
- load_env(shortname)
21
-
22
- filename = shortname + ".rb"
23
-
24
- paths = search_path
25
- unless paths.nil?
26
- paths.each do |dir|
27
- # Load individual files
28
- file = File.join(dir, filename)
29
-
30
- load_file(file) if File.file?(file)
31
- end
32
- end
33
- end
34
-
35
- # Load all facts from all directories.
36
- #
37
- # @api public
38
- def load_all
39
- return if defined?(@loaded_all)
40
-
41
- load_env
42
-
43
- paths = search_path
44
- unless paths.nil?
45
- paths.each do |dir|
46
- # dir is already an absolute path
47
- Dir.glob(File.join(dir, '*.rb')).each do |path|
48
- # exclude dirs that end with .rb
49
- load_file(path) if File.file?(path)
50
- end
51
- end
52
- end
53
-
54
- @loaded_all = true
55
- end
56
-
57
- # List directories to search for fact files.
58
- #
59
- # Search paths are gathered from the following sources:
60
- #
61
- # 1. $LOAD_PATH entries are expanded to absolute paths
62
- # 2. ENV['FACTERLIB'] is split and used verbatim
63
- # 3. Entries from Facter.search_path are used verbatim
64
- #
65
- # A warning will be generated for paths in Facter.search_path that are not
66
- # absolute directories.
67
- #
68
- # @api public
69
- # @return [Array<String>]
70
- def search_path
71
- search_paths = []
72
- search_paths += $LOAD_PATH.map { |path| File.expand_path('facter', path) }
73
-
74
- if @environment_vars.include?("FACTERLIB")
75
- search_paths += @environment_vars["FACTERLIB"].split(File::PATH_SEPARATOR)
76
- end
77
-
78
- search_paths.delete_if { |path| ! valid_search_path?(path) }
79
-
80
- Facter.search_path.each do |path|
81
- if valid_search_path?(path)
82
- search_paths << path
83
- else
84
- Facter.warn "Excluding #{path} from search path. Fact file paths must be an absolute directory"
85
- end
86
- end
87
-
88
- search_paths.delete_if { |path| ! File.directory?(path) }
89
-
90
- search_paths.uniq
91
- end
92
-
93
- private
94
-
95
- # Validate that the given path is valid, ie it is an absolute path.
96
- #
97
- # @api private
98
- # @param path [String]
99
- # @return [Boolean]
100
- def valid_search_path?(path)
101
- Pathname.new(path).absolute?
102
- end
103
-
104
- # Load a file and record is paths to prevent duplicate loads.
105
- #
106
- # @api private
107
- # @params file [String] The *absolute path* to the file to load
108
- def load_file(file)
109
- return if @loaded.include? file
110
-
111
- # We have to specify Kernel.load, because we have a load method.
112
- begin
113
- # Store the file path so we don't try to reload it
114
- @loaded << file
115
- kernel_load(file)
116
- rescue ScriptError => detail
117
- # Don't store the path if the file can't be loaded
118
- # in case it's loadable later on.
119
- @loaded.delete(file)
120
- Facter.log_exception(detail, "Error loading fact #{file}: #{detail.message}")
121
- end
122
- end
123
-
124
- # Load and execute the Ruby program specified in the file. This exists
125
- # for testing purposes.
126
- #
127
- # @api private
128
- # @return [Boolean]
129
- def kernel_load(file)
130
- Kernel.load(file)
131
- end
132
-
133
- # Load facts from the environment. If no name is provided,
134
- # all will be loaded.
135
- def load_env(fact = nil)
136
- # Load from the environment, if possible
137
- @environment_vars.each do |name, value|
138
- # Skip anything that doesn't match our regex.
139
- next unless name =~ /^facter_?(\w+)$/i
140
- env_name = $1
141
-
142
- # If a fact name was specified, skip anything that doesn't
143
- # match it.
144
- next if fact and env_name != fact
145
-
146
- Facter.add($1) do
147
- has_weight 1_000_000
148
- setcode { value }
149
- end
150
-
151
- # Short-cut, if we are only looking for one value.
152
- break if fact
153
- end
154
- end
155
- end
@@ -1,43 +0,0 @@
1
- # A module to gather macaddress facts
2
- #
3
- module Facter::Util::Macaddress
4
-
5
- def self.standardize(macaddress)
6
- return nil unless macaddress
7
- macaddress.split(":").map{|x| "0#{x}"[-2..-1]}.join(":")
8
- end
9
-
10
- module Darwin
11
- def self.macaddress
12
- iface = default_interface
13
- Facter.warn "Could not find a default route. Using first non-loopback interface" if iface.empty?
14
-
15
- macaddress = `#{ifconfig_command} #{iface} | /usr/bin/awk '/ether/{print $2;exit}'`.chomp
16
- macaddress.empty? ? nil : macaddress
17
- end
18
-
19
- def self.default_interface
20
- `#{netstat_command} | /usr/bin/awk '/^default/{print $6;exit}'`.chomp
21
- end
22
-
23
- private
24
-
25
- def self.netstat_command
26
- '/usr/sbin/netstat -rn'
27
- end
28
-
29
- def self.ifconfig_command
30
- '/sbin/ifconfig'
31
- end
32
- end
33
-
34
- module Windows
35
- def macaddress
36
- require 'facter/util/ip/windows'
37
-
38
- adapter = Facter::Util::IP::Windows.get_preferred_ipv4_adapters.first
39
- adapter ? adapter.MACAddress : nil
40
- end
41
- module_function :macaddress
42
- end
43
- end
@@ -1,73 +0,0 @@
1
- ## macosx.rb
2
- ## Support methods for Apple OSX facts
3
- ##
4
- ## Copyright (C) 2007 Jeff McCune
5
- ## Author: Jeff McCune <jeff.mccune@northstarlabs.net>
6
- ##
7
-
8
- module Facter::Util::Macosx
9
- require 'cfpropertylist'
10
- require 'facter/util/resolution'
11
-
12
- Plist_Xml_Doctype = '<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">'
13
-
14
- # JJM I'd really like to dynamically generate these methods
15
- # by looking at the _name key of the _items dict for each _dataType
16
-
17
- def self.profiler_xml(data_field)
18
- Facter::Core::Execution.exec("/usr/sbin/system_profiler -xml #{data_field} 2>/dev/null")
19
- end
20
-
21
- def self.intern_xml(xml)
22
- return nil unless xml
23
- bad_xml_doctype = /^.*<!DOCTYPE plist PUBLIC -\/\/Apple Computer.*$/
24
- if xml =~ bad_xml_doctype
25
- xml.gsub!( bad_xml_doctype, Plist_Xml_Doctype )
26
- Facter.debug("Had to fix plist with incorrect DOCTYPE declaration")
27
- end
28
- plist = CFPropertyList::List.new
29
- begin
30
- plist.load_str(xml)
31
- rescue CFFormatError => e
32
- raise RuntimeError, "A plist file could not be properly read by CFPropertyList: #{e.message}", e.backtrace
33
- end
34
- CFPropertyList.native_types(plist.value)
35
- end
36
-
37
- # Return an xml result, modified as we need it.
38
- def self.profiler_data(data_field)
39
- begin
40
- return nil unless parsed_xml = intern_xml(profiler_xml(data_field))
41
- return nil unless data = parsed_xml[0]['_items'][0]
42
- data.delete '_name'
43
- data
44
- rescue
45
- return nil
46
- end
47
- end
48
-
49
- def self.hardware_overview
50
- profiler_data("SPHardwareDataType")
51
- end
52
-
53
- def self.os_overview
54
- profiler_data("SPSoftwareDataType")
55
- end
56
-
57
- def self.sw_vers
58
- ver = Hash.new
59
- [ "productName", "productVersion", "buildVersion" ].each do |option|
60
- ver["macosx_#{option}"] = Facter::Core::Execution.exec("/usr/bin/sw_vers -#{option}").strip
61
- end
62
- productversion = ver["macosx_productVersion"]
63
- if not productversion.nil?
64
- versions = productversion.scan(/(\d+)\.(\d+)\.*(\d*)/)[0]
65
- ver["macosx_productversion_major"] = "#{versions[0]}.#{versions[1]}"
66
- if versions[2].empty? # 10.x should be treated as 10.x.0
67
- versions[2] = "0"
68
- end
69
- ver["macosx_productversion_minor"] = versions[2]
70
- end
71
- ver
72
- end
73
- end
@@ -1,99 +0,0 @@
1
- # mamufacturer.rb
2
- # Support methods for manufacturer specific facts
3
-
4
- require 'facter/util/posix'
5
-
6
- module Facter::Manufacturer
7
- def self.get_dmi_table()
8
- case Facter.value(:kernel)
9
- when 'Linux', 'GNU/kFreeBSD'
10
- cmd = '/usr/sbin/dmidecode'
11
- when 'FreeBSD'
12
- cmd = '/usr/local/sbin/dmidecode'
13
- when 'NetBSD', 'DragonFly'
14
- cmd = '/usr/pkg/sbin/dmidecode'
15
- when 'SunOS'
16
- cmd = '/usr/sbin/smbios'
17
- end
18
-
19
- if cmd and (output = Facter::Core::Execution.exec("#{cmd} 2>/dev/null"))
20
-
21
- if output.respond_to?(:force_encoding)
22
- output.force_encoding(Encoding::ASCII_8BIT)
23
- end
24
-
25
- return output
26
- end
27
- end
28
-
29
- def self.dmi_find_system_info(name)
30
- splitstr= Facter.value(:kernel) == 'SunOS' ? "ID SIZE TYPE" : /^Handle/
31
- output = self.get_dmi_table()
32
- return if output.nil?
33
- name.each_pair do |key,v|
34
- v.each do |v2|
35
- v2.each_pair do |value,facterkey|
36
- output.split(splitstr).each do |line|
37
- if line =~ /#{key}/ and line =~ /\n\s+#{value} (.+)\n/
38
- result = $1.strip
39
- Facter.add(facterkey) do
40
- confine :kernel => [ :linux, :freebsd, :netbsd, :sunos, :"gnu/kfreebsd", :dragonfly ]
41
- setcode do
42
- result
43
- end
44
- end
45
- end
46
- end
47
- end
48
- end
49
- end
50
- end
51
-
52
- def self.sysctl_find_system_info(name)
53
- name.each do |sysctlkey,facterkey|
54
- Facter.add(facterkey) do
55
- confine :kernel => [:openbsd, :darwin]
56
- setcode { Facter::Util::POSIX.sysctl(sysctlkey) }
57
- end
58
- end
59
- end
60
-
61
- def self.prtdiag_sparc_find_system_info()
62
- # Parses prtdiag for a SPARC architecture string, won't work with Solaris x86
63
- output = Facter::Core::Execution.exec('/usr/sbin/prtdiag 2>/dev/null | /usr/bin/head -n 10')
64
-
65
- # System Configuration: Sun Microsystems sun4u Sun SPARC Enterprise M3000 Server
66
- if output and output =~ /^System Configuration:\s+(.+?)\s+(sun\d+\S+)\s+(.+)/
67
- Facter.add('manufacturer') do
68
- setcode do
69
- $1
70
- end
71
- end
72
- Facter.add('productname') do
73
- setcode do
74
- $3
75
- end
76
- end
77
- end
78
-
79
- Facter.add('serialnumber') do
80
- setcode "/usr/sbin/sneep"
81
- end
82
- end
83
-
84
- def self.win32_find_system_info(name)
85
- require 'facter/util/wmi'
86
- value = ""
87
- wmi = Facter::Util::WMI.connect()
88
- name.each do |facterkey, win32key|
89
- query = wmi.ExecQuery("select * from Win32_#{win32key.last}")
90
- Facter.add(facterkey) do
91
- confine :kernel => :windows
92
- setcode do
93
- query.each { |x| value = x.__send__( (win32key.first).to_sym) }
94
- value
95
- end
96
- end
97
- end
98
- end
99
- end
@@ -1,228 +0,0 @@
1
- ## memory.rb
2
- ## Support module for memory related facts
3
- ##
4
-
5
- require 'facter/util/posix'
6
-
7
- module Facter::Memory
8
- def self.meminfo_number(tag)
9
- memsize = ""
10
- size = [0]
11
- File.readlines("/proc/meminfo").each do |l|
12
- size = $1.to_f if l =~ /^#{tag}:\s+(\d+)\s+\S+/
13
- if tag == "MemFree" &&
14
- l =~ /^(?:Buffers|Cached):\s+(\d+)\s+\S+/
15
- size += $1.to_f
16
- end
17
- end
18
- size / 1024.0
19
- end
20
-
21
- def self.scale_number(size, multiplier)
22
- suffixes = ['', 'kB', 'MB', 'GB', 'TB']
23
-
24
- s = suffixes.shift
25
- while s != multiplier
26
- s = suffixes.shift
27
- end
28
-
29
- while size > 1024.0
30
- size /= 1024.0
31
- s = suffixes.shift
32
- end
33
-
34
- "%.2f %s" % [size, s]
35
- end
36
-
37
- def self.vmstat_find_free_memory(args = [])
38
- cmd = 'vmstat'
39
- cmd += (' ' + args.join(' ')) unless args.empty?
40
- row = Facter::Core::Execution.exec(cmd).split("\n")[-1]
41
- if row =~ /^\s*\d+\s*\d+\s*\d+\s*\d+\s*(\d+)/
42
- memfree = $1
43
- end
44
- end
45
-
46
- # Darwin had to be different. It's generally opaque with how much RAM it is
47
- # using, and this figure could be improved upon too I fear.
48
- # Parses the output of "vm_stat", takes the pages free & pages speculative
49
- # and multiples that by the page size (also given in output). Ties in with
50
- # what activity monitor outputs for free memory.
51
- def self.vmstat_darwin_find_free_memory()
52
-
53
- memfree = 0
54
- pagesize = 0
55
- memspecfree = 0
56
-
57
- vmstats = Facter::Core::Execution.exec('vm_stat')
58
- vmstats.each_line do |vmline|
59
- case
60
- when vmline =~ /page\ssize\sof\s(\d+)\sbytes/
61
- pagesize = $1.to_i
62
- when vmline =~ /^Pages\sfree:\s+(\d+)\./
63
- memfree = $1.to_i
64
- when vmline =~ /^Pages\sspeculative:\s+(\d+)\./
65
- memspecfree = $1.to_i
66
- end
67
- end
68
-
69
- freemem = ( memfree + memspecfree ) * pagesize
70
- end
71
-
72
- # on AIX use svmon to get the free memory:
73
- # it's the third value on the line starting with memory
74
- # svmon can be run by non root users
75
- def self.svmon_aix_find_free_memory()
76
- Facter::Core::Execution.exec("/usr/bin/svmon -O unit=KB") =~ /^memory\s+\d+\s+\d+\s+(\d+)\s+/
77
- $1
78
- end
79
-
80
- def self.mem_free(kernel = Facter.value(:kernel))
81
- output = mem_free_info(kernel)
82
- scale_mem_free_value output, kernel
83
- end
84
-
85
- def self.mem_free_info(kernel = Facter.value(:kernel))
86
- case kernel
87
- when /OpenBSD/i, /SunOS/i, /Dragonfly/i
88
- vmstat_find_free_memory()
89
- when /FreeBSD/i
90
- vmstat_find_free_memory(["-H"])
91
- when /Darwin/i
92
- vmstat_darwin_find_free_memory()
93
- when /AIX/i
94
- svmon_aix_find_free_memory()
95
- end
96
- end
97
-
98
- def self.scale_mem_free_value (value, kernel)
99
- case kernel
100
- when /OpenBSD/i, /FreeBSD/i, /SunOS/i, /Dragonfly/i, /AIX/i
101
- value.to_f / 1024.0
102
- when /Darwin/i
103
- value.to_f / 1024.0 / 1024.0
104
- else
105
- value.to_f
106
- end
107
- end
108
-
109
- def self.mem_size(kernel = Facter.value(:kernel))
110
- output = mem_size_info(kernel)
111
- scale_mem_size_value output, kernel
112
- end
113
-
114
- def self.mem_size_info(kernel = Facter.value(:kernel))
115
- case kernel
116
- when /Dragonfly/i, /FreeBSD/i, /OpenBSD/i
117
- Facter::Util::POSIX.sysctl("hw.physmem")
118
- when /Darwin/i
119
- Facter::Util::POSIX.sysctl("hw.memsize")
120
- when /AIX/i
121
- if Facter::Core::Execution.exec("/usr/bin/svmon -O unit=KB") =~ /^memory\s+(\d+)\s+/
122
- $1
123
- end
124
- end
125
- end
126
-
127
- def self.scale_mem_size_value(value, kernel)
128
- case kernel
129
- when /OpenBSD/i, /FreeBSD/i, /Darwin/i, /Dragonfly/i
130
- value.to_f / 1024.0 / 1024.0
131
- when /AIX/i
132
- value.to_f / 1024.0
133
- else
134
- value.to_f
135
- end
136
- end
137
-
138
- def self.swap_size(kernel = Facter.value(:kernel))
139
- output = swap_info(kernel)
140
- parse_swap output, kernel, :size if output
141
- end
142
-
143
- def self.swap_free(kernel = Facter.value(:kernel))
144
- output = swap_info(kernel)
145
- parse_swap output, kernel, :free if output
146
- end
147
-
148
- def self.swap_info(kernel = Facter.value(:kernel))
149
- case kernel
150
- when /AIX/i
151
- (Facter.value(:id) == "root") ? Facter::Core::Execution.exec('swap -l 2>/dev/null') : nil
152
- when /OpenBSD/i
153
- Facter::Core::Execution.exec('swapctl -s 2>/dev/null')
154
- when /FreeBSD/i
155
- Facter::Core::Execution.exec('swapinfo -k')
156
- when /Darwin/i
157
- Facter::Util::POSIX.sysctl('vm.swapusage')
158
- when /SunOS/i
159
- Facter::Core::Execution.exec('/usr/sbin/swap -l 2>/dev/null')
160
- end
161
- end
162
-
163
- def self.parse_swap (output, kernel = Facter.value(:kernel), size_or_free = :size)
164
- value_in_mb = 0.0
165
- value = 0
166
- is_size = size_or_free == :size
167
- unless output.nil?
168
- output.each_line do |line|
169
- value += parse_swap_line(line, kernel, is_size)
170
- end
171
- end
172
- value_in_mb = scale_swap_value(value, kernel)
173
- end
174
-
175
- # There is a lot of duplication here because of concern over being able to add
176
- # new platforms in a reasonable manner. For all of these platforms the first
177
- # regex corresponds to the swap size value and the second corresponds to the swap
178
- # free value, but this may not always be the case. In Ruby 1.9.3 it is possible
179
- # to give these names, but sadly 1.8.7 does not support this.
180
-
181
- def self.parse_swap_line(line, kernel, is_size)
182
- case kernel
183
- when /AIX/i
184
- if line =~ /^\/\S+\s.*\s+(\S+)MB\s+(\S+)MB/
185
- (is_size) ? $1.to_i : $2.to_i
186
- else
187
- 0
188
- end
189
- when /OpenBSD/i
190
- if line =~ /^total: (\d+) (\d+)-blocks allocated, (\d+) used, (\d+) available$/
191
- (is_size) ? ($1.to_i * $2.to_i) : ($4.to_i * $2.to_i)
192
- else
193
- 0
194
- end
195
- when /FreeBSD/i
196
- if line =~ /\S+\s+(\d+)\s+\d+\s+(\d+)\s+\d+%$/
197
- (is_size) ? $1.to_i : $2.to_i
198
- else
199
- 0
200
- end
201
- when /Darwin/i
202
- if line =~ /total\s=\s(\S+)M\s+used\s=\s\S+M\s+free\s=\s(\S+)M\s/
203
- (is_size) ? $1.to_i : $2.to_i
204
- else
205
- 0
206
- end
207
- when /SunOS/i
208
- if line =~ /^\S+\s.*\s+(\d+)\s+(\d+)$/
209
- (is_size) ? $1.to_i : $2.to_i
210
- else
211
- 0
212
- end
213
- end
214
- end
215
-
216
- def self.scale_swap_value(value, kernel)
217
- case kernel
218
- when /FreeBSD/i
219
- value.to_f / 1024.0
220
- when /OpenBSD/i
221
- value.to_f / 1024.0 / 1024.0
222
- when /SunOS/i
223
- value.to_f / 2 / 1024.0
224
- else
225
- value.to_f
226
- end
227
- end
228
- end