ohai 15.0.35 → 15.1.3

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 (65) hide show
  1. checksums.yaml +4 -4
  2. data/lib/ohai.rb +4 -4
  3. data/lib/ohai/application.rb +3 -3
  4. data/lib/ohai/config.rb +2 -2
  5. data/lib/ohai/dsl.rb +2 -2
  6. data/lib/ohai/dsl/plugin.rb +5 -5
  7. data/lib/ohai/hints.rb +1 -1
  8. data/lib/ohai/loader.rb +4 -4
  9. data/lib/ohai/mixin/azure_metadata.rb +3 -3
  10. data/lib/ohai/mixin/command.rb +3 -3
  11. data/lib/ohai/mixin/do_metadata.rb +3 -3
  12. data/lib/ohai/mixin/ec2_metadata.rb +6 -6
  13. data/lib/ohai/mixin/gce_metadata.rb +3 -3
  14. data/lib/ohai/mixin/http_helper.rb +1 -1
  15. data/lib/ohai/mixin/scaleway_metadata.rb +3 -3
  16. data/lib/ohai/mixin/softlayer_metadata.rb +2 -2
  17. data/lib/ohai/plugin_config.rb +1 -1
  18. data/lib/ohai/plugins/aix/network.rb +6 -6
  19. data/lib/ohai/plugins/azure.rb +2 -2
  20. data/lib/ohai/plugins/bsd/virtualization.rb +2 -2
  21. data/lib/ohai/plugins/darwin/network.rb +14 -13
  22. data/lib/ohai/plugins/darwin/virtualization.rb +1 -1
  23. data/lib/ohai/plugins/digital_ocean.rb +2 -2
  24. data/lib/ohai/plugins/dmi.rb +3 -3
  25. data/lib/ohai/plugins/dragonflybsd/network.rb +9 -9
  26. data/lib/ohai/plugins/ec2.rb +2 -2
  27. data/lib/ohai/plugins/eucalyptus.rb +2 -2
  28. data/lib/ohai/plugins/filesystem.rb +5 -5
  29. data/lib/ohai/plugins/freebsd/network.rb +9 -9
  30. data/lib/ohai/plugins/gce.rb +2 -2
  31. data/lib/ohai/plugins/hostname.rb +2 -2
  32. data/lib/ohai/plugins/kernel.rb +1 -1
  33. data/lib/ohai/plugins/linux/fips.rb +1 -1
  34. data/lib/ohai/plugins/linux/network.rb +18 -18
  35. data/lib/ohai/plugins/linux/platform.rb +1 -3
  36. data/lib/ohai/plugins/linux/sessions.rb +2 -2
  37. data/lib/ohai/plugins/linux/virtualization.rb +2 -2
  38. data/lib/ohai/plugins/netbsd/network.rb +9 -9
  39. data/lib/ohai/plugins/network.rb +3 -3
  40. data/lib/ohai/plugins/openbsd/network.rb +9 -9
  41. data/lib/ohai/plugins/openstack.rb +2 -2
  42. data/lib/ohai/plugins/os.rb +1 -1
  43. data/lib/ohai/plugins/packages.rb +6 -8
  44. data/lib/ohai/plugins/passwd.rb +1 -1
  45. data/lib/ohai/plugins/scaleway.rb +2 -2
  46. data/lib/ohai/plugins/scsi.rb +1 -1
  47. data/lib/ohai/plugins/softlayer.rb +1 -1
  48. data/lib/ohai/plugins/solaris2/dmi.rb +2 -2
  49. data/lib/ohai/plugins/solaris2/network.rb +9 -9
  50. data/lib/ohai/plugins/solaris2/virtualization.rb +1 -1
  51. data/lib/ohai/plugins/uptime.rb +1 -1
  52. data/lib/ohai/plugins/virtualbox.rb +164 -19
  53. data/lib/ohai/plugins/windows/filesystem.rb +1 -1
  54. data/lib/ohai/plugins/windows/fips.rb +1 -1
  55. data/lib/ohai/plugins/windows/network.rb +3 -3
  56. data/lib/ohai/plugins/windows/virtualization.rb +2 -2
  57. data/lib/ohai/provides_map.rb +4 -4
  58. data/lib/ohai/runner.rb +1 -1
  59. data/lib/ohai/system.rb +15 -15
  60. data/lib/ohai/util/win32.rb +1 -1
  61. data/lib/ohai/version.rb +1 -1
  62. data/spec/unit/plugins/solaris2/network_spec.rb +10 -1
  63. data/spec/unit/plugins/vbox_host_spec.rb +14 -0
  64. data/spec/unit/plugins/virtualbox_spec.rb +310 -23
  65. metadata +3 -2
@@ -22,9 +22,9 @@ Ohai.plugin(:Network) do
22
22
 
23
23
  collect_data(:dragonflybsd) do
24
24
  network Mash.new unless network
25
- network[:interfaces] = Mash.new unless network[:interfaces]
25
+ network[:interfaces] ||= Mash.new
26
26
  counters Mash.new unless counters
27
- counters[:network] = Mash.new unless counters[:network]
27
+ counters[:network] ||= Mash.new
28
28
 
29
29
  so = shell_out("route -n get default")
30
30
  so.stdout.lines do |line|
@@ -52,11 +52,11 @@ Ohai.plugin(:Network) do
52
52
  end
53
53
  # call the family lladdr to match linux for consistency
54
54
  if line =~ /\s+ether (.+?)\s/
55
- iface[cint][:addresses] = Mash.new unless iface[cint][:addresses]
55
+ iface[cint][:addresses] ||= Mash.new
56
56
  iface[cint][:addresses][$1] = { "family" => "lladdr" }
57
57
  end
58
58
  if line =~ /\s+inet ([\d.]+) netmask ([\da-fx]+)\s*\w*\s*([\d.]*)/
59
- iface[cint][:addresses] = Mash.new unless iface[cint][:addresses]
59
+ iface[cint][:addresses] ||= Mash.new
60
60
  # convert the netmask to decimal for consistency
61
61
  netmask = "#{$2[2, 2].hex}.#{$2[4, 2].hex}.#{$2[6, 2].hex}.#{$2[8, 2].hex}"
62
62
  if $3.empty?
@@ -67,7 +67,7 @@ Ohai.plugin(:Network) do
67
67
  end
68
68
  end
69
69
  if line =~ /\s+inet6 ([a-f0-9\:]+)%?(\w*)\s+prefixlen\s+(\d+)\s*\w*\s*([\da-fx]*)/
70
- iface[cint][:addresses] = Mash.new unless iface[cint][:addresses]
70
+ iface[cint][:addresses] ||= Mash.new
71
71
  if $4.empty?
72
72
  iface[cint][:addresses][$1] = { "family" => "inet6", "prefixlen" => $3 }
73
73
  else
@@ -89,7 +89,7 @@ Ohai.plugin(:Network) do
89
89
  so.stdout.lines do |line|
90
90
  if line =~ /\((\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\) at ([a-fA-F0-9\:]+) on ([0-9a-zA-Z\.\:\-]+)/
91
91
  next unless iface[$3] # this should never happen
92
- iface[$3][:arp] = Mash.new unless iface[$3][:arp]
92
+ iface[$3][:arp] ||= Mash.new
93
93
  iface[$3][:arp][$1] = $2.downcase
94
94
  end
95
95
  end
@@ -107,9 +107,9 @@ Ohai.plugin(:Network) do
107
107
  # ed0 1500 <Link#1> 54:52:00:68:92:85 333604 26 151905886 175472 0 24897542 0 905
108
108
  # $1 $2 $3 $4 $5 $6 $7 $8 $9 $10
109
109
  if line =~ /^([\w\.\*]+)\s+\d+\s+<Link#\d+>\s+([\w:]*)\s*(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)/
110
- net_counters[$1] = Mash.new unless net_counters[$1]
111
- net_counters[$1]["rx"] = Mash.new unless net_counters[$1]["rx"]
112
- net_counters[$1]["tx"] = Mash.new unless net_counters[$1]["tx"]
110
+ net_counters[$1] ||= Mash.new
111
+ net_counters[$1]["rx"] ||= Mash.new
112
+ net_counters[$1]["tx"] ||= Mash.new
113
113
  net_counters[$1]["rx"]["packets"] = $3
114
114
  net_counters[$1]["rx"]["errors"] = $4
115
115
  net_counters[$1]["rx"]["bytes"] = $5
@@ -26,8 +26,8 @@
26
26
  # 4. Kernel data mentioned Amazon. This catches Windows HVM & paravirt instances
27
27
 
28
28
  Ohai.plugin(:EC2) do
29
- require "ohai/mixin/ec2_metadata"
30
- require "ohai/mixin/http_helper"
29
+ require_relative "../mixin/ec2_metadata"
30
+ require_relative "../mixin/http_helper"
31
31
  require "base64"
32
32
 
33
33
  include Ohai::Mixin::Ec2Metadata
@@ -19,8 +19,8 @@
19
19
 
20
20
  Ohai.plugin(:Eucalyptus) do
21
21
  # eucalyptus metadata service is compatible with the ec2 service calls
22
- require "ohai/mixin/ec2_metadata"
23
- require "ohai/mixin/http_helper"
22
+ require_relative "../mixin/ec2_metadata"
23
+ require_relative "../mixin/http_helper"
24
24
 
25
25
  include Ohai::Mixin::Ec2Metadata
26
26
  include Ohai::Mixin::HttpHelper
@@ -65,7 +65,7 @@ Ohai.plugin(:Filesystem) do
65
65
  def generate_device_view(fs)
66
66
  view = {}
67
67
  fs.each_value do |entry|
68
- view[entry[:device]] = Mash.new unless view[entry[:device]]
68
+ view[entry[:device]] ||= Mash.new
69
69
  entry.each do |key, val|
70
70
  next if %w{device mount}.include?(key)
71
71
  view[entry[:device]][key] = val
@@ -82,7 +82,7 @@ Ohai.plugin(:Filesystem) do
82
82
  view = {}
83
83
  fs.each_value do |entry|
84
84
  next unless entry[:mount]
85
- view[entry[:mount]] = Mash.new unless view[entry[:mount]]
85
+ view[entry[:mount]] ||= Mash.new
86
86
  entry.each do |key, val|
87
87
  next if %w{mount device}.include?(key)
88
88
  view[entry[:mount]][key] = val
@@ -182,7 +182,7 @@ Ohai.plugin(:Filesystem) do
182
182
  so.stdout.each_line do |line|
183
183
  if line =~ /^(.+?) on (.+?) type (.+?) \((.+?)\)$/
184
184
  key = "#{$1},#{$2}"
185
- fs[key] = Mash.new unless fs.key?(key)
185
+ fs[key] ||= Mash.new
186
186
  fs[key][:device] = $1
187
187
  fs[key][:mount] = $2
188
188
  fs[key][:fs_type] = $3
@@ -380,7 +380,7 @@ Ohai.plugin(:Filesystem) do
380
380
  so.stdout.lines do |line|
381
381
  if line =~ /^(.+?) on (.+?) \((.+?), (.+?)\)$/
382
382
  key = "#{$1},#{$2}"
383
- fs[key] = Mash.new unless fs.key?(key)
383
+ fs[key] ||= Mash.new
384
384
  fs[key][:mount] = $2
385
385
  fs[key][:fs_type] = $3
386
386
  fs[key][:mount_options] = $4.split(/,\s*/)
@@ -426,7 +426,7 @@ Ohai.plugin(:Filesystem) do
426
426
  so.stdout.lines do |line|
427
427
  next unless line =~ /^(.+?) on (.+?) (.+?) on (.+?)$/
428
428
  key = "#{$2},#{$1}"
429
- fs[key] = Mash.new unless fs.key?(key)
429
+ fs[key] ||= Mash.new
430
430
  fs[key][:mount] = $1
431
431
  fs[key][:mount_time] = $4 # $4 must come before "split", else it becomes nil
432
432
  fs[key][:mount_options] = $3.split("/")
@@ -22,9 +22,9 @@ Ohai.plugin(:Network) do
22
22
 
23
23
  collect_data(:freebsd) do
24
24
  network Mash.new unless network
25
- network[:interfaces] = Mash.new unless network[:interfaces]
25
+ network[:interfaces] ||= Mash.new
26
26
  counters Mash.new unless counters
27
- counters[:network] = Mash.new unless counters[:network]
27
+ counters[:network] ||= Mash.new
28
28
 
29
29
  so = shell_out("route -n get default")
30
30
  so.stdout.lines do |line|
@@ -52,11 +52,11 @@ Ohai.plugin(:Network) do
52
52
  end
53
53
  # call the family lladdr to match linux for consistency
54
54
  if line =~ /\s+ether (.+?)\s/
55
- iface[cint][:addresses] = Mash.new unless iface[cint][:addresses]
55
+ iface[cint][:addresses] ||= Mash.new
56
56
  iface[cint][:addresses][$1] = { "family" => "lladdr" }
57
57
  end
58
58
  if line =~ /\s+inet ([\d.]+) netmask ([\da-fx]+)\s*\w*\s*([\d.]*)/
59
- iface[cint][:addresses] = Mash.new unless iface[cint][:addresses]
59
+ iface[cint][:addresses] ||= Mash.new
60
60
  # convert the netmask to decimal for consistency
61
61
  netmask = "#{$2[2, 2].hex}.#{$2[4, 2].hex}.#{$2[6, 2].hex}.#{$2[8, 2].hex}"
62
62
  if $3.empty?
@@ -67,7 +67,7 @@ Ohai.plugin(:Network) do
67
67
  end
68
68
  end
69
69
  if line =~ /\s+inet6 ([a-f0-9\:]+)%?(\w*)\s+prefixlen\s+(\d+)\s*\w*\s*([\da-fx]*)/
70
- iface[cint][:addresses] = Mash.new unless iface[cint][:addresses]
70
+ iface[cint][:addresses] ||= Mash.new
71
71
  if $4.empty?
72
72
  iface[cint][:addresses][$1] = { "family" => "inet6", "prefixlen" => $3 }
73
73
  else
@@ -89,7 +89,7 @@ Ohai.plugin(:Network) do
89
89
  so.stdout.lines do |line|
90
90
  if line =~ /\((\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\) at ([a-fA-F0-9\:]+) on ([0-9a-zA-Z\.\:\-]+)/
91
91
  next unless iface[$3] # this should never happen
92
- iface[$3][:arp] = Mash.new unless iface[$3][:arp]
92
+ iface[$3][:arp] ||= Mash.new
93
93
  iface[$3][:arp][$1] = $2.downcase
94
94
  end
95
95
  end
@@ -107,9 +107,9 @@ Ohai.plugin(:Network) do
107
107
  # ed0 1500 <Link#1> 54:52:00:68:92:85 333604 26 151905886 175472 0 24897542 0 905
108
108
  # $1 $2 $3 $4 $5 $6 $7 $8 $9 $10
109
109
  if line =~ /^([\w\.\*]+)\s+\d+\s+<Link#\d+>\s+([\w:]*)\s*(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)/
110
- net_counters[$1] = Mash.new unless net_counters[$1]
111
- net_counters[$1]["rx"] = Mash.new unless net_counters[$1]["rx"]
112
- net_counters[$1]["tx"] = Mash.new unless net_counters[$1]["tx"]
110
+ net_counters[$1] ||= Mash.new
111
+ net_counters[$1]["rx"] ||= Mash.new
112
+ net_counters[$1]["tx"] ||= Mash.new
113
113
  net_counters[$1]["rx"]["packets"] = $3
114
114
  net_counters[$1]["rx"]["errors"] = $4
115
115
  net_counters[$1]["rx"]["bytes"] = $5
@@ -15,8 +15,8 @@
15
15
  # limitations under the License.
16
16
 
17
17
  Ohai.plugin(:GCE) do
18
- require "ohai/mixin/gce_metadata"
19
- require "ohai/mixin/http_helper"
18
+ require_relative "../mixin/gce_metadata"
19
+ require_relative "../mixin/http_helper"
20
20
 
21
21
  include Ohai::Mixin::GCEMetadata
22
22
  include Ohai::Mixin::HttpHelper
@@ -26,7 +26,7 @@
26
26
  #
27
27
 
28
28
  Ohai.plugin(:Hostname) do
29
- require "socket"
29
+ require "socket" unless defined?(Socket)
30
30
  require "ipaddr"
31
31
 
32
32
  provides "domain", "hostname", "fqdn", "machinename"
@@ -161,7 +161,7 @@ Ohai.plugin(:Hostname) do
161
161
 
162
162
  collect_data(:windows) do
163
163
  require "wmi-lite/wmi"
164
- require "socket"
164
+ require "socket" unless defined?(Socket)
165
165
 
166
166
  wmi = WmiLite::Wmi.new
167
167
  host = wmi.first_of("Win32_ComputerSystem")
@@ -247,7 +247,7 @@ Ohai.plugin(:Kernel) do
247
247
  end
248
248
 
249
249
  collect_data(:windows) do
250
- require "win32ole"
250
+ require "win32ole" unless defined?(WIN32OLE)
251
251
  require "wmi-lite/wmi"
252
252
 
253
253
  WIN32OLE.codepage = WIN32OLE::CP_UTF8
@@ -28,7 +28,7 @@ Ohai.plugin(:Fips) do
28
28
  collect_data(:linux) do
29
29
  fips Mash.new
30
30
 
31
- require "openssl"
31
+ require "openssl" unless defined?(OpenSSL)
32
32
  if defined?(OpenSSL.fips_mode) && OpenSSL.fips_mode && !$FIPS_TEST_MODE
33
33
  fips["kernel"] = { "enabled" => true }
34
34
  else
@@ -58,7 +58,7 @@ Ohai.plugin(:Network) do
58
58
  logger.warn("neighbor list has entries for unknown interface #{interface}")
59
59
  next
60
60
  end
61
- interface[neigh_attr] = Mash.new unless interface[neigh_attr]
61
+ interface[neigh_attr] ||= Mash.new
62
62
  interface[neigh_attr][$1] = $3.downcase
63
63
  end
64
64
  end
@@ -208,8 +208,8 @@ Ohai.plugin(:Network) do
208
208
  so.stdout.lines do |line|
209
209
  if line =~ IPROUTE_INT_REGEX
210
210
  tmp_int = $2
211
- iface[tmp_int] = Mash.new unless iface[tmp_int]
212
- net_counters[tmp_int] = Mash.new unless net_counters[tmp_int]
211
+ iface[tmp_int] ||= Mash.new
212
+ net_counters[tmp_int] ||= Mash.new
213
213
  end
214
214
 
215
215
  if line =~ /^\s+(ip6tnl|ipip)/
@@ -239,7 +239,7 @@ Ohai.plugin(:Network) do
239
239
 
240
240
  if line =~ /(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)/
241
241
  int = on_rx ? :rx : :tx
242
- net_counters[tmp_int][int] = Mash.new unless net_counters[tmp_int][int]
242
+ net_counters[tmp_int][int] ||= Mash.new
243
243
  net_counters[tmp_int][int][:bytes] = $1
244
244
  net_counters[tmp_int][int][:packets] = $2
245
245
  net_counters[tmp_int][int][:errors] = $3
@@ -255,7 +255,7 @@ Ohai.plugin(:Network) do
255
255
  end
256
256
 
257
257
  if line =~ /qlen (\d+)/
258
- net_counters[tmp_int][:tx] = Mash.new unless net_counters[tmp_int][:tx]
258
+ net_counters[tmp_int][:tx] ||= Mash.new
259
259
  net_counters[tmp_int][:tx][:queuelen] = $1
260
260
  end
261
261
 
@@ -266,7 +266,7 @@ Ohai.plugin(:Network) do
266
266
  else
267
267
  tmp_id = $1
268
268
  end
269
- iface[tmp_int][:vlan] = Mash.new unless iface[tmp_int][:vlan]
269
+ iface[tmp_int][:vlan] ||= Mash.new
270
270
  iface[tmp_int][:vlan][:id] = tmp_id
271
271
  iface[tmp_int][:vlan][:protocol] = tmp_prot if tmp_prot
272
272
 
@@ -320,7 +320,7 @@ Ohai.plugin(:Network) do
320
320
  if line =~ /link\/(\w+) ([\da-f\:]+) /
321
321
  iface[cint][:encapsulation] = linux_encaps_lookup($1)
322
322
  unless $2 == "00:00:00:00:00:00"
323
- iface[cint][:addresses] = Mash.new unless iface[cint][:addresses]
323
+ iface[cint][:addresses] ||= Mash.new
324
324
  iface[cint][:addresses][$2.upcase] = { "family" => "lladdr" }
325
325
  end
326
326
  end
@@ -340,8 +340,8 @@ Ohai.plugin(:Network) do
340
340
  cint = alias_int
341
341
  end
342
342
 
343
- iface[cint] = Mash.new unless iface[cint] # Create the fake alias interface if needed
344
- iface[cint][:addresses] = Mash.new unless iface[cint][:addresses]
343
+ iface[cint] ||= Mash.new # Create the fake alias interface if needed
344
+ iface[cint][:addresses] ||= Mash.new
345
345
  iface[cint][:addresses][tmp_addr] = { "family" => "inet", "prefixlen" => tmp_prefix }
346
346
  iface[cint][:addresses][tmp_addr][:netmask] = IPAddr.new("255.255.255.255").mask(tmp_prefix.to_i).to_s
347
347
 
@@ -365,7 +365,7 @@ Ohai.plugin(:Network) do
365
365
 
366
366
  def parse_ip_addr_inet6_line(cint, iface, line)
367
367
  if line =~ /inet6 ([a-f0-9\:]+)\/(\d+) scope (\w+)( .*)?/
368
- iface[cint][:addresses] = Mash.new unless iface[cint][:addresses]
368
+ iface[cint][:addresses] ||= Mash.new
369
369
  tmp_addr = $1
370
370
  tags = $4 || ""
371
371
  tags = tags.split(" ")
@@ -476,9 +476,9 @@ Ohai.plugin(:Network) do
476
476
  net_counters = Mash.new
477
477
 
478
478
  network Mash.new unless network
479
- network[:interfaces] = Mash.new unless network[:interfaces]
479
+ network[:interfaces] ||= Mash.new
480
480
  counters Mash.new unless counters
481
- counters[:network] = Mash.new unless counters[:network]
481
+ counters[:network] ||= Mash.new
482
482
 
483
483
  # ohai.plugin[:network][:default_route_table] = 'default'
484
484
  if configuration(:default_route_table).nil? || configuration(:default_route_table).empty?
@@ -491,7 +491,7 @@ Ohai.plugin(:Network) do
491
491
  # Match the lead line for an interface from iproute2
492
492
  # 3: eth0.11@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
493
493
  # The '@eth0:' portion doesn't exist on primary interfaces and thus is optional in the regex
494
- IPROUTE_INT_REGEX = /^(\d+): ([0-9a-zA-Z@:\.\-_]*?)(@[0-9a-zA-Z]+|):\s/.freeze unless defined? IPROUTE_INT_REGEX
494
+ IPROUTE_INT_REGEX ||= /^(\d+): ([0-9a-zA-Z@:\.\-_]*?)(@[0-9a-zA-Z]+|):\s/.freeze
495
495
 
496
496
  if which("ip")
497
497
  # families to get default routes from
@@ -597,16 +597,16 @@ Ohai.plugin(:Network) do
597
597
  iface[cint][:encapsulation] = linux_encaps_lookup($1)
598
598
  end
599
599
  if line =~ /HWaddr (.+?)\s/
600
- iface[cint][:addresses] = Mash.new unless iface[cint][:addresses]
600
+ iface[cint][:addresses] ||= Mash.new
601
601
  iface[cint][:addresses][$1] = { "family" => "lladdr" }
602
602
  end
603
603
  if line =~ /inet addr:(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/
604
- iface[cint][:addresses] = Mash.new unless iface[cint][:addresses]
604
+ iface[cint][:addresses] ||= Mash.new
605
605
  iface[cint][:addresses][$1] = { "family" => "inet" }
606
606
  tmp_addr = $1
607
607
  end
608
608
  if line =~ /inet6 addr: ([a-f0-9\:]+)\/(\d+) Scope:(\w+)/
609
- iface[cint][:addresses] = Mash.new unless iface[cint][:addresses]
609
+ iface[cint][:addresses] ||= Mash.new
610
610
  iface[cint][:addresses][$1] = { "family" => "inet6", "prefixlen" => $2, "scope" => ($3.eql?("Host") ? "Node" : $3) }
611
611
  end
612
612
  if line =~ /Bcast:(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/
@@ -626,7 +626,7 @@ Ohai.plugin(:Network) do
626
626
  iface[cint][:peer] = $1
627
627
  end
628
628
  if line =~ /RX packets:(\d+) errors:(\d+) dropped:(\d+) overruns:(\d+) frame:(\d+)/
629
- net_counters[cint] = Mash.new unless net_counters[cint]
629
+ net_counters[cint] ||= Mash.new
630
630
  net_counters[cint][:rx] = { "packets" => $1, "errors" => $2, "drop" => $3, "overrun" => $4, "frame" => $5 }
631
631
  end
632
632
  if line =~ /TX packets:(\d+) errors:(\d+) dropped:(\d+) overruns:(\d+) carrier:(\d+)/
@@ -650,7 +650,7 @@ Ohai.plugin(:Network) do
650
650
  so.stdout.lines do |line|
651
651
  if line =~ /^\S+ \((\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\) at ([a-fA-F0-9\:]+) \[(\w+)\] on ([0-9a-zA-Z\.\:\-]+)/
652
652
  next unless iface[$4] # this should never happen
653
- iface[$4][:arp] = Mash.new unless iface[$4][:arp]
653
+ iface[$4][:arp] ||= Mash.new
654
654
  iface[$4][:arp][$1] = $2.downcase
655
655
  end
656
656
  end
@@ -23,8 +23,7 @@ Ohai.plugin(:Platform) do
23
23
  # the platform mappings between the 'ID' field in /etc/os-release and the value
24
24
  # ohai uses. If you're adding a new platform here and you want to change the name
25
25
  # you'll want to add it here and then add a spec for the platform_id_remap method
26
- unless defined?(PLATFORM_MAPPINGS)
27
- PLATFORM_MAPPINGS = {
26
+ PLATFORM_MAPPINGS ||= {
28
27
  "rhel" => "redhat",
29
28
  "amzn" => "amazon",
30
29
  "ol" => "oracle",
@@ -34,7 +33,6 @@ Ohai.plugin(:Platform) do
34
33
  "xenenterprise" => "xenserver",
35
34
  "cumulus-linux" => "cumulus",
36
35
  }.freeze
37
- end
38
36
 
39
37
  # @deprecated
40
38
  def get_redhatish_platform(contents)
@@ -28,8 +28,8 @@ Ohai.plugin(:Sessions) do
28
28
  loginctl = shell_out(cmd)
29
29
 
30
30
  sessions Mash.new unless sessions
31
- sessions[:by_session] = Mash.new unless sessions[:by_session]
32
- sessions[:by_user] = Mash.new unless sessions[:by_user]
31
+ sessions[:by_session] ||= Mash.new
32
+ sessions[:by_user] ||= Mash.new
33
33
 
34
34
  loginctl.stdout.split("\n").each do |line|
35
35
  session, uid, user, seat = line.split
@@ -19,7 +19,7 @@
19
19
  Ohai.plugin(:Virtualization) do
20
20
  provides "virtualization"
21
21
  depends "dmi"
22
- require "ohai/mixin/dmi_decode"
22
+ require_relative "../../mixin/dmi_decode"
23
23
  include Ohai::Mixin::DmiDecode
24
24
 
25
25
  def lxc_version_exists?
@@ -36,7 +36,7 @@ Ohai.plugin(:Virtualization) do
36
36
 
37
37
  collect_data(:linux) do
38
38
  virtualization Mash.new unless virtualization
39
- virtualization[:systems] = Mash.new unless virtualization[:systems]
39
+ virtualization[:systems] ||= Mash.new
40
40
 
41
41
  # Docker hosts
42
42
  if docker_exists?
@@ -22,9 +22,9 @@ Ohai.plugin(:Network) do
22
22
 
23
23
  collect_data(:netbsd) do
24
24
  network Mash.new unless network
25
- network[:interfaces] = Mash.new unless network[:interfaces]
25
+ network[:interfaces] ||= Mash.new
26
26
  counters Mash.new unless counters
27
- counters[:network] = Mash.new unless counters[:network]
27
+ counters[:network] ||= Mash.new
28
28
 
29
29
  so = shell_out("route -n get default")
30
30
  so.stdout.lines do |line|
@@ -52,11 +52,11 @@ Ohai.plugin(:Network) do
52
52
  end
53
53
  # call the family lladdr to match linux for consistency
54
54
  if line =~ /\s+address: (.+?)\s/
55
- iface[cint][:addresses] = Mash.new unless iface[cint][:addresses]
55
+ iface[cint][:addresses] ||= Mash.new
56
56
  iface[cint][:addresses][$1] = { "family" => "lladdr" }
57
57
  end
58
58
  if line =~ /\s+inet ([\d.]+) netmask ([\da-fx]+)\s*\w*\s*([\d.]*)/
59
- iface[cint][:addresses] = Mash.new unless iface[cint][:addresses]
59
+ iface[cint][:addresses] ||= Mash.new
60
60
  # convert the netmask to decimal for consistency
61
61
  netmask = "#{$2[2, 2].hex}.#{$2[4, 2].hex}.#{$2[6, 2].hex}.#{$2[8, 2].hex}"
62
62
  if $3.empty?
@@ -67,7 +67,7 @@ Ohai.plugin(:Network) do
67
67
  end
68
68
  end
69
69
  if line =~ /\s+inet6 ([a-f0-9\:]+)%?(\w*)\s+prefixlen\s+(\d+)\s*\w*\s*([\da-fx]*)/
70
- iface[cint][:addresses] = Mash.new unless iface[cint][:addresses]
70
+ iface[cint][:addresses] ||= Mash.new
71
71
  if $4.empty?
72
72
  iface[cint][:addresses][$1] = { "family" => "inet6", "prefixlen" => $3 }
73
73
  else
@@ -89,7 +89,7 @@ Ohai.plugin(:Network) do
89
89
  so.stdout.lines do |line|
90
90
  if line =~ /\((\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\) at ([a-fA-F0-9\:]+) on ([0-9a-zA-Z\.\:\-]+)/
91
91
  next unless iface[$3] # this should never happen
92
- iface[$3][:arp] = Mash.new unless iface[$3][:arp]
92
+ iface[$3][:arp] ||= Mash.new
93
93
  iface[$3][:arp][$1] = $2.downcase
94
94
  end
95
95
  end
@@ -107,9 +107,9 @@ Ohai.plugin(:Network) do
107
107
  # em0 1500 <Link> 00:11:25:2d:90:be 3719557 0 3369969 0 0 0
108
108
  # $1 $2 $3 $4 $5 $6 $7 $8
109
109
  if line =~ /^([\w\.\*]+)\s+\d+\s+<Link>\s+([\w:]*)\s*(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)/
110
- net_counters[$1] = Mash.new unless net_counters[$1]
111
- net_counters[$1]["rx"] = Mash.new unless net_counters[$1]["rx"]
112
- net_counters[$1]["tx"] = Mash.new unless net_counters[$1]["tx"]
110
+ net_counters[$1] ||= Mash.new
111
+ net_counters[$1]["rx"] ||= Mash.new
112
+ net_counters[$1]["tx"] ||= Mash.new
113
113
  net_counters[$1]["rx"]["packets"] = $3
114
114
  net_counters[$1]["rx"]["errors"] = $4
115
115
  net_counters[$1]["tx"]["packets"] = $5