29
29
:SwapSize => "SwapTotal",
30
30
:SwapFree => "SwapFree"
31
31
}.each do |fact, name|
33
confine :kernel => [ :linux, :"gnu/kfreebsd" ]
35
Facter::Memory.meminfo_number(name)
33
confine :kernel => [ :linux, :"gnu/kfreebsd" ]
35
Facter::Memory.meminfo_number(name)
40
40
Facter.add("SwapSize") do
41
confine :kernel => :Darwin
41
confine :kernel => :Darwin
43
43
swap = Facter::Util::Resolution.exec('sysctl vm.swapusage')
45
45
if swap =~ /total = (\S+)/ then swaptotal = $1; end
50
50
Facter.add("SwapFree") do
51
confine :kernel => :Darwin
51
confine :kernel => :Darwin
53
53
swap = Facter::Util::Resolution.exec('sysctl vm.swapusage')
55
55
if swap =~ /free = (\S+)/ then swapfree = $1; end
60
60
Facter.add("SwapEncrypted") do
61
confine :kernel => :Darwin
61
confine :kernel => :Darwin
63
63
swap = Facter::Util::Resolution.exec('sysctl vm.swapusage')
65
65
if swap =~ /\(encrypted\)/ then encrypted = true; end
70
70
if Facter.value(:kernel) == "AIX" and Facter.value(:id) == "root"
71
swap = Facter::Util::Resolution.exec('swap -l')
72
swapfree, swaptotal = 0, 0
73
swap.each_line do |dev|
74
if dev =~ /^\/\S+\s.*\s+(\S+)MB\s+(\S+)MB/
80
Facter.add("SwapSize") do
81
confine :kernel => :aix
83
Facter::Memory.scale_number(swaptotal.to_f,"MB")
87
Facter.add("SwapFree") do
88
confine :kernel => :aix
90
Facter::Memory.scale_number(swapfree.to_f,"MB")
71
swap = Facter::Util::Resolution.exec('swap -l')
72
swapfree, swaptotal = 0, 0
73
swap.each_line do |dev|
74
if dev =~ /^\/\S+\s.*\s+(\S+)MB\s+(\S+)MB/
80
Facter.add("SwapSize") do
81
confine :kernel => :aix
83
Facter::Memory.scale_number(swaptotal.to_f,"MB")
87
Facter.add("SwapFree") do
88
confine :kernel => :aix
90
Facter::Memory.scale_number(swapfree.to_f,"MB")
95
95
if Facter.value(:kernel) == "OpenBSD"
96
swap = Facter::Util::Resolution.exec('swapctl -l | sed 1d')
97
swapfree, swaptotal = 0, 0
98
swap.each_line do |dev|
99
if dev =~ /^\S+\s+(\S+)\s+\S+\s+(\S+)\s+.*$/
105
Facter.add("SwapSize") do
106
confine :kernel => :openbsd
108
Facter::Memory.scale_number(swaptotal.to_f,"kB")
112
Facter.add("SwapFree") do
113
confine :kernel => :openbsd
115
Facter::Memory.scale_number(swapfree.to_f,"kB")
119
Facter::Memory.vmstat_find_free_memory()
121
Facter.add("MemoryTotal") do
122
confine :kernel => :openbsd
123
memtotal = Facter::Util::Resolution.exec("sysctl hw.physmem | cut -d'=' -f2")
125
Facter::Memory.scale_number(memtotal.to_f,"")
96
swap = Facter::Util::Resolution.exec('swapctl -s')
97
swapfree, swaptotal = 0, 0
98
if swap =~ /^total: (\d+)k bytes allocated = \d+k used, (\d+)k available$/
103
Facter.add("SwapSize") do
104
confine :kernel => :openbsd
106
Facter::Memory.scale_number(swaptotal.to_f,"kB")
110
Facter.add("SwapFree") do
111
confine :kernel => :openbsd
113
Facter::Memory.scale_number(swapfree.to_f,"kB")
117
Facter::Memory.vmstat_find_free_memory()
119
Facter.add("MemoryTotal") do
120
confine :kernel => :openbsd
121
memtotal = Facter::Util::Resolution.exec("sysctl hw.physmem | cut -d'=' -f2")
123
Facter::Memory.scale_number(memtotal.to_f,"")
130
128
if Facter.value(:kernel) == "Darwin"
131
swap = Facter::Util::Resolution.exec('sysctl vm.swapusage')
132
swapfree, swaptotal = 0, 0
135
# vm.swapusage: total = 128.00M used = 0.37M free = 127.63M (encrypted)
136
if swap =~ /total\s=\s(\S+)\s+used\s=\s(\S+)\s+free\s=\s(\S+)\s/
142
Facter.add("SwapSize") do
143
confine :kernel => :Darwin
145
Facter::Memory.scale_number(swaptotal.to_f,"MB")
149
Facter.add("SwapFree") do
150
confine :kernel => :Darwin
152
Facter::Memory.scale_number(swapfree.to_f,"MB")
156
Facter::Memory.vmstat_darwin_find_free_memory()
158
Facter.add("MemoryTotal") do
159
confine :kernel => :Darwin
160
memtotal = Facter::Util::Resolution.exec("sysctl hw.memsize | cut -d':' -f2")
162
Facter::Memory.scale_number(memtotal.to_f,"")
129
swap = Facter::Util::Resolution.exec('sysctl vm.swapusage')
130
swapfree, swaptotal = 0, 0
133
# vm.swapusage: total = 128.00M used = 0.37M free = 127.63M (encrypted)
134
if swap =~ /total\s=\s(\S+)\s+used\s=\s(\S+)\s+free\s=\s(\S+)\s/
140
Facter.add("SwapSize") do
141
confine :kernel => :Darwin
143
Facter::Memory.scale_number(swaptotal.to_f,"MB")
147
Facter.add("SwapFree") do
148
confine :kernel => :Darwin
150
Facter::Memory.scale_number(swapfree.to_f,"MB")
154
Facter::Memory.vmstat_darwin_find_free_memory()
156
Facter.add("MemoryTotal") do
157
confine :kernel => :Darwin
158
memtotal = Facter::Util::Resolution.exec("sysctl hw.memsize | cut -d':' -f2")
160
Facter::Memory.scale_number(memtotal.to_f,"")
167
165
if Facter.value(:kernel) == "SunOS"
168
swap = Facter::Util::Resolution.exec('/usr/sbin/swap -l')
169
swapfree, swaptotal = 0, 0
170
swap.each_line do |dev|
171
if dev =~ /^\/\S+\s.*\s+(\d+)\s+(\d+)$/
172
swaptotal += $1.to_i / 2
173
swapfree += $2.to_i / 2
177
Facter.add("SwapSize") do
178
confine :kernel => :sunos
180
Facter::Memory.scale_number(swaptotal.to_f,"kB")
184
Facter.add("SwapFree") do
185
confine :kernel => :sunos
187
Facter::Memory.scale_number(swapfree.to_f,"kB")
191
# Total memory size available from prtconf
192
pconf = Facter::Util::Resolution.exec('/usr/sbin/prtconf')
194
pconf.each_line do |line|
195
if line =~ /^Memory size:\s+(\d+) Megabytes/
200
Facter.add("MemorySize") do
201
confine :kernel => :sunos
203
Facter::Memory.scale_number(phymem.to_f,"MB")
207
Facter::Memory.vmstat_find_free_memory()
166
swap = Facter::Util::Resolution.exec('/usr/sbin/swap -l')
167
swapfree, swaptotal = 0, 0
168
swap.each_line do |dev|
169
if dev =~ /^\/\S+\s.*\s+(\d+)\s+(\d+)$/
170
swaptotal += $1.to_i / 2
171
swapfree += $2.to_i / 2
175
Facter.add("SwapSize") do
176
confine :kernel => :sunos
178
Facter::Memory.scale_number(swaptotal.to_f,"kB")
182
Facter.add("SwapFree") do
183
confine :kernel => :sunos
185
Facter::Memory.scale_number(swapfree.to_f,"kB")
189
# Total memory size available from prtconf
190
pconf = Facter::Util::Resolution.exec('/usr/sbin/prtconf 2>/dev/null')
192
pconf.each_line do |line|
193
if line =~ /^Memory size:\s+(\d+) Megabytes/
198
Facter.add("MemorySize") do
199
confine :kernel => :sunos
201
Facter::Memory.scale_number(phymem.to_f,"MB")
205
Facter::Memory.vmstat_find_free_memory()
210
208
if Facter.value(:kernel) == "windows"