facter 4.0.32 → 4.0.33
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.
- checksums.yaml +4 -4
- data/lib/facter/facts/linux/virtual.rb +17 -0
- data/lib/facter/facts/macosx/virtual.rb +1 -1
- data/lib/facter/facts/solaris/memory/swap/available.rb +22 -0
- data/lib/facter/facts/solaris/memory/swap/available_bytes.rb +22 -0
- data/lib/facter/facts/solaris/memory/swap/capacity.rb +20 -0
- data/lib/facter/facts/solaris/memory/swap/total.rb +22 -0
- data/lib/facter/facts/solaris/memory/swap/total_bytes.rb +22 -0
- data/lib/facter/facts/solaris/memory/swap/used.rb +21 -0
- data/lib/facter/facts/solaris/memory/swap/used_bytes.rb +19 -0
- data/lib/facter/facts/solaris/memory/system/available.rb +22 -0
- data/lib/facter/facts/solaris/memory/system/available_bytes.rb +22 -0
- data/lib/facter/facts/solaris/memory/system/capacity.rb +20 -0
- data/lib/facter/facts/solaris/memory/system/total.rb +22 -0
- data/lib/facter/facts/solaris/memory/system/total_bytes.rb +22 -0
- data/lib/facter/facts/solaris/memory/system/used.rb +21 -0
- data/lib/facter/facts/solaris/memory/system/used_bytes.rb +19 -0
- data/lib/facter/resolvers/lspci.rb +2 -0
- data/lib/facter/resolvers/networking_linux_resolver.rb +11 -0
- data/lib/facter/resolvers/solaris/memory.rb +93 -0
- data/lib/facter/resolvers/utils/networking.rb +2 -0
- data/lib/facter/resolvers/windows/networking_resolver.rb +0 -2
- data/lib/facter/version.rb +1 -1
- metadata +17 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 32bb403fb4187d3a595b0b8aa4ed12ba472b1efc6d785cf2d371fc1488afd2d7
|
4
|
+
data.tar.gz: b8b159eedc00a4c17e2121e73f38bb76d383b298746731104511a36955ba382d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3a0f55015be59493c79b53f054e609a336d6e64385547534ffe62084b060d1b70da511f0a4d74179717bf8fe11287ed972586fb159c20a33d4832ba01f287ffc
|
7
|
+
data.tar.gz: 1814bfa9210ec33c2ddeafad6d123a4f2c7377c792cd4a494de5d467f606b46943f2a294c6abc4f1e1700a87edaeeffe3e1de0712782a46ada76ae289367e17f
|
@@ -5,43 +5,59 @@ module Facts
|
|
5
5
|
class Virtual
|
6
6
|
FACT_NAME = 'virtual'
|
7
7
|
|
8
|
+
def initialize
|
9
|
+
@log = Facter::Log.new(self)
|
10
|
+
end
|
11
|
+
|
8
12
|
def call_the_resolver # rubocop:disable Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
|
13
|
+
@log.debug('Linux Virtual Resolver')
|
14
|
+
|
9
15
|
fact_value = check_docker_lxc || check_gce || retrieve_from_virt_what || check_vmware
|
10
16
|
fact_value ||= check_open_vz || check_vserver || check_xen || check_other_facts || check_lspci || 'physical'
|
11
17
|
|
18
|
+
@log.debug("Fact value is: #{fact_value}")
|
19
|
+
|
12
20
|
Facter::ResolvedFact.new(FACT_NAME, fact_value)
|
13
21
|
end
|
14
22
|
|
15
23
|
def check_gce
|
24
|
+
@log.debug('Checking GCE')
|
16
25
|
bios_vendor = Facter::Resolvers::Linux::DmiBios.resolve(:bios_vendor)
|
17
26
|
'gce' if bios_vendor&.include?('Google')
|
18
27
|
end
|
19
28
|
|
20
29
|
def check_docker_lxc
|
30
|
+
@log.debug('Checking Docker and LXC')
|
21
31
|
Facter::Resolvers::Containers.resolve(:vm)
|
22
32
|
end
|
23
33
|
|
24
34
|
def check_vmware
|
35
|
+
@log.debug('Checking VMware')
|
25
36
|
Facter::Resolvers::Vmware.resolve(:vm)
|
26
37
|
end
|
27
38
|
|
28
39
|
def retrieve_from_virt_what
|
40
|
+
@log.debug('Checking virtual_what')
|
29
41
|
Facter::Resolvers::VirtWhat.resolve(:vm)
|
30
42
|
end
|
31
43
|
|
32
44
|
def check_open_vz
|
45
|
+
@log.debug('Checking OpenVZ')
|
33
46
|
Facter::Resolvers::OpenVz.resolve(:vm)
|
34
47
|
end
|
35
48
|
|
36
49
|
def check_vserver
|
50
|
+
@log.debug('Checking VServer')
|
37
51
|
Facter::Resolvers::VirtWhat.resolve(:vserver)
|
38
52
|
end
|
39
53
|
|
40
54
|
def check_xen
|
55
|
+
@log.debug('Checking XEN')
|
41
56
|
Facter::Resolvers::Xen.resolve(:vm)
|
42
57
|
end
|
43
58
|
|
44
59
|
def check_other_facts
|
60
|
+
@log.debug('Checking others')
|
45
61
|
product_name = Facter::Resolvers::Linux::DmiBios.resolve(:product_name)
|
46
62
|
bios_vendor = Facter::Resolvers::Linux::DmiBios.resolve(:bios_vendor)
|
47
63
|
return 'kvm' if bios_vendor&.include?('Amazon EC2')
|
@@ -53,6 +69,7 @@ module Facts
|
|
53
69
|
end
|
54
70
|
|
55
71
|
def check_lspci
|
72
|
+
@log.debug('Checking lspci')
|
56
73
|
Facter::Resolvers::Lspci.resolve(:vm)
|
57
74
|
end
|
58
75
|
end
|
@@ -6,7 +6,7 @@ module Facts
|
|
6
6
|
FACT_NAME = 'virtual'
|
7
7
|
|
8
8
|
def call_the_resolver
|
9
|
-
fact_value = check_vmware || check_virtualbox || check_parallels
|
9
|
+
fact_value = check_vmware || check_virtualbox || check_parallels || 'physical'
|
10
10
|
|
11
11
|
Facter::ResolvedFact.new(FACT_NAME, fact_value)
|
12
12
|
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Facts
|
4
|
+
module Solaris
|
5
|
+
module Memory
|
6
|
+
module Swap
|
7
|
+
class Available
|
8
|
+
FACT_NAME = 'memory.swap.available'
|
9
|
+
ALIASES = 'swapfree'
|
10
|
+
|
11
|
+
def call_the_resolver
|
12
|
+
fact_value = Facter::Resolvers::Solaris::Memory.resolve(:swap)
|
13
|
+
if fact_value
|
14
|
+
fact_value = Facter::FactsUtils::UnitConverter.bytes_to_human_readable(fact_value[:available_bytes])
|
15
|
+
end
|
16
|
+
[Facter::ResolvedFact.new(FACT_NAME, fact_value), Facter::ResolvedFact.new(ALIASES, fact_value, :legacy)]
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Facts
|
4
|
+
module Solaris
|
5
|
+
module Memory
|
6
|
+
module Swap
|
7
|
+
class AvailableBytes
|
8
|
+
FACT_NAME = 'memory.swap.available_bytes'
|
9
|
+
ALIASES = 'swapfree_mb'
|
10
|
+
|
11
|
+
def call_the_resolver
|
12
|
+
fact_value = Facter::Resolvers::Solaris::Memory.resolve(:swap)
|
13
|
+
fact_value = fact_value[:available_bytes] if fact_value
|
14
|
+
|
15
|
+
[Facter::ResolvedFact.new(FACT_NAME, fact_value),
|
16
|
+
Facter::ResolvedFact.new(ALIASES, Facter::FactsUtils::UnitConverter.bytes_to_mb(fact_value), :legacy)]
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Facts
|
4
|
+
module Solaris
|
5
|
+
module Memory
|
6
|
+
module Swap
|
7
|
+
class Capacity
|
8
|
+
FACT_NAME = 'memory.swap.capacity'
|
9
|
+
|
10
|
+
def call_the_resolver
|
11
|
+
fact_value = Facter::Resolvers::Solaris::Memory.resolve(:swap)
|
12
|
+
fact_value = fact_value[:capacity] if fact_value
|
13
|
+
|
14
|
+
Facter::ResolvedFact.new(FACT_NAME, fact_value)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Facts
|
4
|
+
module Solaris
|
5
|
+
module Memory
|
6
|
+
module Swap
|
7
|
+
class Total
|
8
|
+
FACT_NAME = 'memory.swap.total'
|
9
|
+
ALIASES = 'swapsize'
|
10
|
+
|
11
|
+
def call_the_resolver
|
12
|
+
fact_value = Facter::Resolvers::Solaris::Memory.resolve(:swap)
|
13
|
+
if fact_value
|
14
|
+
fact_value = Facter::FactsUtils::UnitConverter.bytes_to_human_readable(fact_value[:total_bytes])
|
15
|
+
end
|
16
|
+
[Facter::ResolvedFact.new(FACT_NAME, fact_value), Facter::ResolvedFact.new(ALIASES, fact_value, :legacy)]
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Facts
|
4
|
+
module Solaris
|
5
|
+
module Memory
|
6
|
+
module Swap
|
7
|
+
class TotalBytes
|
8
|
+
FACT_NAME = 'memory.swap.total_bytes'
|
9
|
+
ALIASES = 'swapsize_mb'
|
10
|
+
|
11
|
+
def call_the_resolver
|
12
|
+
fact_value = Facter::Resolvers::Solaris::Memory.resolve(:swap)
|
13
|
+
fact_value = fact_value[:total_bytes] if fact_value
|
14
|
+
|
15
|
+
[Facter::ResolvedFact.new(FACT_NAME, fact_value),
|
16
|
+
Facter::ResolvedFact.new(ALIASES, Facter::FactsUtils::UnitConverter.bytes_to_mb(fact_value), :legacy)]
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Facts
|
4
|
+
module Solaris
|
5
|
+
module Memory
|
6
|
+
module Swap
|
7
|
+
class Used
|
8
|
+
FACT_NAME = 'memory.swap.used'
|
9
|
+
|
10
|
+
def call_the_resolver
|
11
|
+
fact_value = Facter::Resolvers::Solaris::Memory.resolve(:swap)
|
12
|
+
if fact_value
|
13
|
+
fact_value = Facter::FactsUtils::UnitConverter.bytes_to_human_readable(fact_value[:used_bytes])
|
14
|
+
end
|
15
|
+
Facter::ResolvedFact.new(FACT_NAME, fact_value)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Facts
|
4
|
+
module Solaris
|
5
|
+
module Memory
|
6
|
+
module Swap
|
7
|
+
class UsedBytes
|
8
|
+
FACT_NAME = 'memory.swap.used_bytes'
|
9
|
+
|
10
|
+
def call_the_resolver
|
11
|
+
fact_value = Facter::Resolvers::Solaris::Memory.resolve(:swap)
|
12
|
+
fact_value = fact_value[:used_bytes] if fact_value
|
13
|
+
Facter::ResolvedFact.new(FACT_NAME, fact_value)
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Facts
|
4
|
+
module Solaris
|
5
|
+
module Memory
|
6
|
+
module System
|
7
|
+
class Available
|
8
|
+
FACT_NAME = 'memory.system.available'
|
9
|
+
ALIASES = 'memoryfree'
|
10
|
+
|
11
|
+
def call_the_resolver
|
12
|
+
fact_value = Facter::Resolvers::Solaris::Memory.resolve(:system)
|
13
|
+
if fact_value
|
14
|
+
fact_value = Facter::FactsUtils::UnitConverter.bytes_to_human_readable(fact_value[:available_bytes])
|
15
|
+
end
|
16
|
+
[Facter::ResolvedFact.new(FACT_NAME, fact_value), Facter::ResolvedFact.new(ALIASES, fact_value, :legacy)]
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Facts
|
4
|
+
module Solaris
|
5
|
+
module Memory
|
6
|
+
module System
|
7
|
+
class AvailableBytes
|
8
|
+
FACT_NAME = 'memory.system.available_bytes'
|
9
|
+
ALIASES = 'memoryfree_mb'
|
10
|
+
|
11
|
+
def call_the_resolver
|
12
|
+
fact_value = Facter::Resolvers::Solaris::Memory.resolve(:system)
|
13
|
+
fact_value = fact_value[:available_bytes] if fact_value
|
14
|
+
|
15
|
+
[Facter::ResolvedFact.new(FACT_NAME, fact_value),
|
16
|
+
Facter::ResolvedFact.new(ALIASES, Facter::FactsUtils::UnitConverter.bytes_to_mb(fact_value), :legacy)]
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Facts
|
4
|
+
module Solaris
|
5
|
+
module Memory
|
6
|
+
module System
|
7
|
+
class Capacity
|
8
|
+
FACT_NAME = 'memory.system.capacity'
|
9
|
+
|
10
|
+
def call_the_resolver
|
11
|
+
fact_value = Facter::Resolvers::Solaris::Memory.resolve(:system)
|
12
|
+
fact_value = fact_value[:capacity] if fact_value
|
13
|
+
|
14
|
+
Facter::ResolvedFact.new(FACT_NAME, fact_value)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Facts
|
4
|
+
module Solaris
|
5
|
+
module Memory
|
6
|
+
module System
|
7
|
+
class Total
|
8
|
+
FACT_NAME = 'memory.system.total'
|
9
|
+
ALIASES = 'memorysize'
|
10
|
+
|
11
|
+
def call_the_resolver
|
12
|
+
fact_value = Facter::Resolvers::Solaris::Memory.resolve(:system)
|
13
|
+
if fact_value
|
14
|
+
fact_value = Facter::FactsUtils::UnitConverter.bytes_to_human_readable(fact_value[:total_bytes])
|
15
|
+
end
|
16
|
+
[Facter::ResolvedFact.new(FACT_NAME, fact_value), Facter::ResolvedFact.new(ALIASES, fact_value, :legacy)]
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Facts
|
4
|
+
module Solaris
|
5
|
+
module Memory
|
6
|
+
module System
|
7
|
+
class TotalBytes
|
8
|
+
FACT_NAME = 'memory.system.total_bytes'
|
9
|
+
ALIASES = 'memorysize_mb'
|
10
|
+
|
11
|
+
def call_the_resolver
|
12
|
+
fact_value = Facter::Resolvers::Solaris::Memory.resolve(:system)
|
13
|
+
fact_value = fact_value[:total_bytes] if fact_value
|
14
|
+
|
15
|
+
[Facter::ResolvedFact.new(FACT_NAME, fact_value),
|
16
|
+
Facter::ResolvedFact.new(ALIASES, Facter::FactsUtils::UnitConverter.bytes_to_mb(fact_value), :legacy)]
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Facts
|
4
|
+
module Solaris
|
5
|
+
module Memory
|
6
|
+
module System
|
7
|
+
class Used
|
8
|
+
FACT_NAME = 'memory.system.used'
|
9
|
+
|
10
|
+
def call_the_resolver
|
11
|
+
fact_value = Facter::Resolvers::Solaris::Memory.resolve(:system)
|
12
|
+
if fact_value
|
13
|
+
fact_value = Facter::FactsUtils::UnitConverter.bytes_to_human_readable(fact_value[:used_bytes])
|
14
|
+
end
|
15
|
+
Facter::ResolvedFact.new(FACT_NAME, fact_value)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Facts
|
4
|
+
module Solaris
|
5
|
+
module Memory
|
6
|
+
module System
|
7
|
+
class UsedBytes
|
8
|
+
FACT_NAME = 'memory.system.used_bytes'
|
9
|
+
|
10
|
+
def call_the_resolver
|
11
|
+
fact_value = Facter::Resolvers::Solaris::Memory.resolve(:system)
|
12
|
+
fact_value = fact_value[:used_bytes] if fact_value
|
13
|
+
Facter::ResolvedFact.new(FACT_NAME, fact_value)
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -11,6 +11,7 @@ module Facter
|
|
11
11
|
private
|
12
12
|
|
13
13
|
def post_resolve(fact_name)
|
14
|
+
log.debug('in networking_linux_resolver')
|
14
15
|
@fact_list.fetch(fact_name) { retrieve_network_info(fact_name) }
|
15
16
|
|
16
17
|
@fact_list[fact_name]
|
@@ -36,12 +37,17 @@ module Facter
|
|
36
37
|
end
|
37
38
|
|
38
39
|
def retrieve_interface_info
|
40
|
+
log.debug('retrieve_interface_info')
|
39
41
|
output = Facter::Core::Execution.execute('ip -o address', logger: log)
|
42
|
+
log.debug("ip -o address result is:\n#{output}")
|
43
|
+
|
40
44
|
interfaces = {}
|
41
45
|
|
42
46
|
output.each_line do |ip_line|
|
43
47
|
ip_tokens = ip_line.split(' ')
|
44
48
|
|
49
|
+
log.debug("ip_tokens = #{ip_tokens}")
|
50
|
+
log.debug("interfaces = #{interfaces}")
|
45
51
|
fill_ip_v4_info!(ip_tokens, interfaces)
|
46
52
|
fill_io_v6_info!(ip_tokens, interfaces)
|
47
53
|
find_dhcp!(ip_tokens, interfaces)
|
@@ -93,10 +99,15 @@ module Facter
|
|
93
99
|
end
|
94
100
|
|
95
101
|
def fill_ip_v4_info!(ip_tokens, network_info)
|
102
|
+
log.debug('fill_ip_v4_info!')
|
96
103
|
return unless ip_tokens[2].casecmp('inet').zero?
|
97
104
|
|
98
105
|
interface_name, ip4_address, ip4_mask_length = retrieve_name_and_ip_info(ip_tokens)
|
99
106
|
|
107
|
+
log.debug("interface_name = #{interface_name}\n" \
|
108
|
+
"ip4_address = #{ip4_address}\n" \
|
109
|
+
"ip4_mask_length = #{ip4_mask_length}")
|
110
|
+
|
100
111
|
binding = ::Resolvers::Utils::Networking.build_binding(ip4_address, ip4_mask_length)
|
101
112
|
build_network_info_structure!(network_info, interface_name, :bindings)
|
102
113
|
|
@@ -0,0 +1,93 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Facter
|
4
|
+
module Resolvers
|
5
|
+
module Solaris
|
6
|
+
class Memory < BaseResolver
|
7
|
+
BLOCKSIZE = 512
|
8
|
+
# :system
|
9
|
+
# :swap
|
10
|
+
@semaphore = Mutex.new
|
11
|
+
@fact_list ||= {}
|
12
|
+
class << self
|
13
|
+
private
|
14
|
+
|
15
|
+
def post_resolve(fact_name)
|
16
|
+
@fact_list.fetch(fact_name) { calculate_memory(fact_name) }
|
17
|
+
end
|
18
|
+
|
19
|
+
def calculate_memory(fact_name)
|
20
|
+
@fact_list = { system: sys, swap: swap }
|
21
|
+
|
22
|
+
@fact_list[fact_name]
|
23
|
+
end
|
24
|
+
|
25
|
+
def sys
|
26
|
+
sys = {}
|
27
|
+
output = Facter::Core::Execution.execute('/usr/bin/kstat -m unix -n system_pages', logger: log).strip
|
28
|
+
total, free = parse_sys_output(output)
|
29
|
+
|
30
|
+
return unless total || free
|
31
|
+
|
32
|
+
sys[:total_bytes] = total
|
33
|
+
sys[:available_bytes] = free
|
34
|
+
sys[:used_bytes] = total - free
|
35
|
+
sys[:capacity] = FilesystemHelper.compute_capacity(total - free, total)
|
36
|
+
|
37
|
+
sys
|
38
|
+
end
|
39
|
+
|
40
|
+
def swap
|
41
|
+
swap_hash = {}
|
42
|
+
output = Facter::Core::Execution.execute('/usr/sbin/swap -l', logger: log).strip
|
43
|
+
total, free = parse_swap_output(output)
|
44
|
+
|
45
|
+
swap_hash[:total_bytes] = total
|
46
|
+
swap_hash[:available_bytes] = free
|
47
|
+
swap_hash[:used_bytes] = total - free
|
48
|
+
swap_hash[:capacity] = FilesystemHelper.compute_capacity(total - free, total)
|
49
|
+
|
50
|
+
swap_hash if total != 0
|
51
|
+
end
|
52
|
+
|
53
|
+
def parse_sys_output(output)
|
54
|
+
kstats = output.scan(/(physmem|pagesfree)\s+(\d+)/)
|
55
|
+
kstats = kstats.to_h
|
56
|
+
return unless kstats['physmem'] || kstats['pagesfree']
|
57
|
+
return unless pagesize != 0
|
58
|
+
|
59
|
+
total = kstats['physmem'].to_i * pagesize
|
60
|
+
free = kstats['pagesfree'].to_i * pagesize
|
61
|
+
|
62
|
+
[total, free]
|
63
|
+
end
|
64
|
+
|
65
|
+
def parse_swap_output(output)
|
66
|
+
total = 0
|
67
|
+
free = 0
|
68
|
+
|
69
|
+
output.each_line do |line|
|
70
|
+
swap_sizes = line.match(/(\d+)\s+(\d+)$/)
|
71
|
+
next if swap_sizes.nil?
|
72
|
+
|
73
|
+
total += swap_sizes[1].to_i
|
74
|
+
free += swap_sizes[2].to_i
|
75
|
+
end
|
76
|
+
total *= BLOCKSIZE
|
77
|
+
free *= BLOCKSIZE
|
78
|
+
|
79
|
+
[total, free]
|
80
|
+
end
|
81
|
+
|
82
|
+
def pagesize
|
83
|
+
unless @fact_list[:pagesize]
|
84
|
+
@fact_list[:pagesize] = Facter::Core::Execution.execute('pagesize', logger: log).strip.to_i
|
85
|
+
log.debug("Pagesize: #{@fact_list[:pagesize]}")
|
86
|
+
end
|
87
|
+
@fact_list[:pagesize]
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
data/lib/facter/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: facter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.0.
|
4
|
+
version: 4.0.33
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Puppet
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-08-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -565,6 +565,20 @@ files:
|
|
565
565
|
- lib/facter/facts/solaris/kernelrelease.rb
|
566
566
|
- lib/facter/facts/solaris/kernelversion.rb
|
567
567
|
- lib/facter/facts/solaris/macaddress_interfaces.rb
|
568
|
+
- lib/facter/facts/solaris/memory/swap/available.rb
|
569
|
+
- lib/facter/facts/solaris/memory/swap/available_bytes.rb
|
570
|
+
- lib/facter/facts/solaris/memory/swap/capacity.rb
|
571
|
+
- lib/facter/facts/solaris/memory/swap/total.rb
|
572
|
+
- lib/facter/facts/solaris/memory/swap/total_bytes.rb
|
573
|
+
- lib/facter/facts/solaris/memory/swap/used.rb
|
574
|
+
- lib/facter/facts/solaris/memory/swap/used_bytes.rb
|
575
|
+
- lib/facter/facts/solaris/memory/system/available.rb
|
576
|
+
- lib/facter/facts/solaris/memory/system/available_bytes.rb
|
577
|
+
- lib/facter/facts/solaris/memory/system/capacity.rb
|
578
|
+
- lib/facter/facts/solaris/memory/system/total.rb
|
579
|
+
- lib/facter/facts/solaris/memory/system/total_bytes.rb
|
580
|
+
- lib/facter/facts/solaris/memory/system/used.rb
|
581
|
+
- lib/facter/facts/solaris/memory/system/used_bytes.rb
|
568
582
|
- lib/facter/facts/solaris/mountpoints.rb
|
569
583
|
- lib/facter/facts/solaris/mtu_interfaces.rb
|
570
584
|
- lib/facter/facts/solaris/netmask6_interfaces.rb
|
@@ -808,6 +822,7 @@ files:
|
|
808
822
|
- lib/facter/resolvers/solaris/ffi/structs.rb
|
809
823
|
- lib/facter/resolvers/solaris/filesystems_resolver.rb
|
810
824
|
- lib/facter/resolvers/solaris/ipaddress_resolver.rb
|
825
|
+
- lib/facter/resolvers/solaris/memory.rb
|
811
826
|
- lib/facter/resolvers/solaris/networking_resolver.rb
|
812
827
|
- lib/facter/resolvers/solaris/processors.rb
|
813
828
|
- lib/facter/resolvers/solaris/solaris_os_release_resolver.rb
|