ohai 8.7.0 → 8.8.0

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 (46) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +4 -3
  3. data/lib/ohai/application.rb +3 -1
  4. data/lib/ohai/loader.rb +4 -3
  5. data/lib/ohai/mixin/dmi_decode.rb +47 -0
  6. data/lib/ohai/mixin/os.rb +2 -0
  7. data/lib/ohai/plugins/aix/kernel.rb +2 -1
  8. data/lib/ohai/plugins/{freebsd → bsd}/filesystem.rb +21 -3
  9. data/lib/ohai/plugins/bsd/virtualization.rb +80 -0
  10. data/lib/ohai/plugins/dragonflybsd/cpu.rb +58 -0
  11. data/lib/ohai/plugins/dragonflybsd/memory.rb +60 -0
  12. data/lib/ohai/plugins/dragonflybsd/network.rb +126 -0
  13. data/lib/ohai/plugins/dragonflybsd/os.rb +32 -0
  14. data/lib/ohai/plugins/dragonflybsd/platform.rb +29 -0
  15. data/lib/ohai/plugins/freebsd/cpu.rb +14 -8
  16. data/lib/ohai/plugins/freebsd/os.rb +1 -1
  17. data/lib/ohai/plugins/hostname.rb +1 -1
  18. data/lib/ohai/plugins/kernel.rb +12 -0
  19. data/lib/ohai/plugins/linux/virtualization.rb +8 -37
  20. data/lib/ohai/plugins/network_listeners.rb +5 -0
  21. data/lib/ohai/plugins/ps.rb +2 -2
  22. data/lib/ohai/plugins/solaris2/filesystem.rb +9 -1
  23. data/lib/ohai/plugins/uptime.rb +1 -1
  24. data/lib/ohai/plugins/virtualbox.rb +44 -0
  25. data/lib/ohai/plugins/windows/cpu.rb +26 -27
  26. data/lib/ohai/plugins/windows/virtualization.rb +29 -17
  27. data/lib/ohai/system.rb +1 -1
  28. data/lib/ohai/version.rb +1 -1
  29. data/ohai.gemspec +50 -0
  30. data/spec/functional/loader_spec.rb +53 -0
  31. data/spec/unit/loader_spec.rb +51 -53
  32. data/spec/unit/plugins/aix/kernel_spec.rb +5 -0
  33. data/spec/unit/plugins/bsd/filesystem_spec.rb +126 -0
  34. data/spec/unit/plugins/{freebsd → bsd}/virtualization_spec.rb +7 -4
  35. data/spec/unit/plugins/freebsd/cpu_spec.rb +60 -14
  36. data/spec/unit/plugins/linux/virtualization_spec.rb +58 -5
  37. data/spec/unit/plugins/solaris2/filesystem.rb +84 -0
  38. data/spec/unit/plugins/virtualbox_spec.rb +88 -0
  39. data/spec/unit/plugins/windows/cpu_spec.rb +3 -1
  40. data/spec/unit/plugins/windows/virtualization_spec.rb +182 -32
  41. metadata +21 -26
  42. data/lib/ohai/plugins/freebsd/virtualization.rb +0 -94
  43. data/lib/ohai/plugins/netbsd/filesystem.rb +0 -57
  44. data/lib/ohai/plugins/netbsd/virtualization.rb +0 -68
  45. data/lib/ohai/plugins/openbsd/filesystem.rb +0 -57
  46. data/lib/ohai/plugins/openbsd/virtualization.rb +0 -68
@@ -1,6 +1,8 @@
1
1
  #
2
2
  # Author:: Pavel Yudin (<pyudin@parallels.com>)
3
+ # Author:: Tim Smith (<tsmith@chef.io>)
3
4
  # Copyright:: Copyright (c) 2015 Pavel Yudin
5
+ # Copyright:: Copyright (c) 2015 Chef Software, Inc.
4
6
  # License:: Apache License, Version 2.0
5
7
  #
6
8
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -18,47 +20,195 @@
18
20
 
19
21
  require File.expand_path(File.dirname(__FILE__) + '/../../../spec_helper.rb')
20
22
 
21
- describe Ohai::System, "Windows virtualization platform" do
22
- let(:plugin) { get_plugin("windows/virtualization")}
23
+ describe Ohai::System, 'Windows virtualization platform' do
24
+ let(:plugin) { get_plugin('windows/virtualization') }
23
25
 
24
26
  before(:each) do
25
27
  allow(plugin).to receive(:collect_os).and_return(:windows)
26
- allow(plugin).to receive(:powershell_exists?).and_return(false)
27
28
  end
28
29
 
29
- describe "when we are checking for parallels" do
30
- it "should set parallels guest if powershell exists and it's output contains 'Parallels Software International Inc.'" do
31
- allow(plugin).to receive(:powershell_exists?).and_return(true)
32
- bios=<<-BIOS
33
- SMBIOSBIOSVersion : 10.2.0 (28956) rev 0
34
- Manufacturer : Parallels Software International Inc.
35
- Name : Default System BIOS
36
- SerialNumber : Parallels-92 05 B4 56 97 11 4F FA B1 95 1A FF 8E F9 DD CE
37
- Version : PRLS - 1
38
- BIOS
39
- shellout = double("shellout")
40
- allow(shellout).to receive(:stdout).and_return(bios)
41
- allow(plugin).to receive(:shell_out).with('powershell.exe "Get-WmiObject -Class Win32_BIOS"').and_return(shellout)
30
+ context 'when running on vmware' do
31
+ it 'system is vmware' do
32
+ allow_any_instance_of(WmiLite::Wmi).to receive(:instances_of).with('Win32_BIOS').and_return([{ 'bioscharacteristics' => [4, 7, 8, 9, 10, 11, 12, 14, 15, 16, 19, 26, 27, 28, 29, 30, 32, 39, 40, 41, 42, 50, 57, 58],
33
+ 'biosversion' => ['INTEL - 6040000', 'PhoenixBIOS 4.0 Release 6.0 '],
34
+ 'buildnumber' => nil,
35
+ 'caption' => 'PhoenixBIOS 4.0 Release 6.0 ',
36
+ 'codeset' => nil, 'currentlanguage' => nil,
37
+ 'description' => 'PhoenixBIOS 4.0 Release 6.0 ',
38
+ 'identificationcode' => nil,
39
+ 'installablelanguages' => nil,
40
+ 'installdate' => nil,
41
+ 'languageedition' => nil,
42
+ 'listoflanguages' => nil,
43
+ 'manufacturer' => 'Phoenix Technologies LTD',
44
+ 'name' => 'PhoenixBIOS 4.0 Release 6.0 ',
45
+ 'othertargetos' => nil,
46
+ 'primarybios' => true,
47
+ 'releasedate' => '20130731000000.000000+000',
48
+ 'serialnumber' => 'VMware-56 4d 65 24 ac cf ec 72-fa 29 b2 7d 8f df b2 7a',
49
+ 'smbiosbiosversion' => '6.00',
50
+ 'smbiosmajorversion' => 2,
51
+ 'smbiosminorversion' => 4,
52
+ 'smbiospresent' => true,
53
+ 'softwareelementid' => 'PhoenixBIOS 4.0 Release 6.0 ',
54
+ 'softwareelementstate' => 3,
55
+ 'status' => 'OK',
56
+ 'targetoperatingsystem' => 0,
57
+ 'version' => 'INTEL - 6040000'
58
+ }])
42
59
  plugin.run
43
- expect(plugin[:virtualization][:system]).to eq("parallels")
44
- expect(plugin[:virtualization][:role]).to eq("guest")
45
- expect(plugin[:virtualization][:systems][:parallels]).to eq("guest")
60
+ expect(plugin[:virtualization][:system]).to eq('vmware')
61
+ expect(plugin[:virtualization][:role]).to eq('guest')
62
+ expect(plugin[:virtualization][:systems][:vmware]).to eq('guest')
46
63
  end
64
+ end
65
+
66
+ context 'when running on parallels desktop' do
67
+ it 'system is parallels' do
68
+ allow_any_instance_of(WmiLite::Wmi).to receive(:instances_of).with('Win32_BIOS').and_return([{ 'bioscharacteristics' => [4, 7, 9, 10, 15, 24, 25, 27, 28, 29, 30, 32, 42, 44, 48, 49, 51, 64, 65, 67],
69
+ 'biosversion' => ['PRLS - 1'],
70
+ 'buildnumber' => nil,
71
+ 'caption' => 'Default System BIOS',
72
+ 'codeset' => nil,
73
+ 'currentlanguage' => nil,
74
+ 'description' => 'Default System BIOS',
75
+ 'identificationcode' => nil,
76
+ 'installablelanguages' => nil,
77
+ 'installdate' => nil,
78
+ 'languageedition' => nil,
79
+ 'listoflanguages' => nil,
80
+ 'manufacturer' => 'Parallels Software International Inc.',
81
+ 'name' => 'Default System BIOS',
82
+ 'othertargetos' => nil,
83
+ 'primarybios' => true,
84
+ 'releasedate' => '20151005000000.000000+000',
85
+ 'serialnumber' => 'Parallels-82 75 A0 A0 9B B4 47 7C 87 A9 D9 E1 2B 90 4B 1F',
86
+ 'smbiosbiosversion' => '11.0.2 (31348)',
87
+ 'smbiosmajorversion' => 2,
88
+ 'smbiosminorversion' => 7,
89
+ 'smbiospresent' => true,
90
+ 'softwareelementid' => 'Default System BIOS',
91
+ 'softwareelementstate' => 3,
92
+ 'status' => 'OK',
93
+ 'targetoperatingsystem' => 0,
94
+ 'version' => 'PRLS - 1'
95
+ }])
96
+ plugin.run
97
+ expect(plugin[:virtualization][:system]).to eq('parallels')
98
+ expect(plugin[:virtualization][:role]).to eq('guest')
99
+ expect(plugin[:virtualization][:systems][:parallels]).to eq('guest')
100
+ end
101
+ end
102
+
103
+ context 'when running on kvm' do
104
+ it 'system is kvm' do
105
+ allow_any_instance_of(WmiLite::Wmi).to receive(:instances_of).with('Win32_BIOS').and_return([{ 'bioscharacteristics' => [3, 42, 48, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79],
106
+ 'biosversion' => ['BOCHS - 1'],
107
+ 'buildnumber' => nil,
108
+ 'caption' => 'Default System BIOS',
109
+ 'codeset' => nil,
110
+ 'currentlanguage' => nil,
111
+ 'description' => 'Default System BIOS',
112
+ 'identificationcode' => nil,
113
+ 'installablelanguages' => nil,
114
+ 'installdate' => nil,
115
+ 'languageedition' => nil,
116
+ 'listoflanguages' => nil,
117
+ 'manufacturer' => 'Bochs',
118
+ 'name' => 'Default System BIOS',
119
+ 'othertargetos' => nil,
120
+ 'primarybios' => true,
121
+ 'releasedate' => '20110101******.******+***',
122
+ 'serialnumber' => nil,
123
+ 'smbiosbiosversion' => 'Bochs',
124
+ 'smbiosmajorversion' => 2,
125
+ 'smbiosminorversion' => 4,
126
+ 'smbiospresent' => true,
127
+ 'softwareelementid' => 'Default System BIOS',
128
+ 'softwareelementstate' => 3,
129
+ 'status' => 'OK',
130
+ 'targetoperatingsystem' => 0, 'version' => 'BOCHS -1'
131
+ }])
132
+ plugin.run
133
+ expect(plugin[:virtualization][:system]).to eq('kvm')
134
+ expect(plugin[:virtualization][:role]).to eq('guest')
135
+ expect(plugin[:virtualization][:systems][:kvm]).to eq('guest')
136
+ end
137
+ end
138
+
139
+ context 'when running on virtualbox' do
140
+ it 'system is vbox' do
141
+ allow_any_instance_of(WmiLite::Wmi).to receive(:instances_of).with('Win32_BIOS').and_return([{ 'bioscharacteristics' => [4, 7, 15, 16, 27, 30, 32],
142
+ 'biosversion' => ['VBOX - 1'],
143
+ 'buildnumber' => nil,
144
+ 'caption' => 'Default System BIOS',
145
+ 'codeset' => nil,
146
+ 'currentlanguage' => nil,
147
+ 'description' => 'Default System BIOS',
148
+ 'identificationcode' => nil,
149
+ 'installablelanguages' => nil,
150
+ 'installdate' => nil,
151
+ 'languageedition' => nil,
152
+ 'listoflanguages' => nil,
153
+ 'manufacturer' => 'innotek GmbH',
154
+ 'name' => 'Default System BIOS',
155
+ 'othertargetos' => nil,
156
+ 'primarybios' => true,
157
+ 'releasedate' => '20061201000000.000000+000',
158
+ 'serialnumber' => '0',
159
+ 'smbiosbiosversion' => 'VirtualBox',
160
+ 'smbiosmajorversion' => 2,
161
+ 'smbiosminorversion' => 5,
162
+ 'smbiospresent' => true,
163
+ 'softwareelementid' => 'Default System BIOS',
164
+ 'softwareelementstate' => 3,
165
+ 'status' => 'OK',
166
+ 'targetoperatingsystem' => 0,
167
+ 'version' => 'VBOX - 1'
168
+ }])
169
+ plugin.run
170
+ expect(plugin[:virtualization][:system]).to eq('vbox')
171
+ expect(plugin[:virtualization][:role]).to eq('guest')
172
+ expect(plugin[:virtualization][:systems][:vbox]).to eq('guest')
173
+ end
174
+ end
47
175
 
48
- it "should not set parallels guest if powershell exists and it's output not contain 'Parallels Software International Inc.'" do
49
- allow(plugin).to receive(:ioreg_exists?).and_return(true)
50
- bios=<<-BIOS
51
- SMBIOSBIOSVersion : 4.6.5
52
- Manufacturer      : American Megatrends Inc.
53
- Name              : BIOS Date: 10/23/12 15:38:23 Ver: 04.06.05
54
- SerialNumber      : 334281-001
55
- Version           : Dealin - 1072009
56
- BIOS
57
- shellout = double("shellout")
58
- allow(shellout).to receive(:stdout).and_return(bios)
59
- allow(plugin).to receive(:shell_out).with('powershell.exe "Get-WmiObject -Class Win32_BIOS"').and_return(shellout)
176
+ context 'when running on a hardware system' do
177
+ it 'does not set virtualization attributes' do
178
+ allow_any_instance_of(WmiLite::Wmi).to receive(:instances_of).with('Win32_BIOS').and_return([{ 'bioscharacteristics' => [7, 11, 12, 15, 16, 17, 19, 23, 24, 25, 26, 27, 28, 29, 32, 33, 40, 42, 43],
179
+ 'biosversion' => ['DELL - 1072009', 'A10', 'American Megatrends - 4028D'],
180
+ 'buildnumber' => nil,
181
+ 'caption' => 'A10',
182
+ 'codeset' => nil,
183
+ 'currentlanguage' => nil,
184
+ 'description' => 'A10',
185
+ 'embeddedcontrollermajorversion' => 255,
186
+ 'embeddedcontrollerminorversion' => 255,
187
+ 'identificationcode' => nil,
188
+ 'installablelanguages' => nil,
189
+ 'installdate' => nil,
190
+ 'languageedition' => nil,
191
+ 'listoflanguages' => nil,
192
+ 'manufacturer' => 'Dell Inc.',
193
+ 'name' => 'A10',
194
+ 'othertargetos' => nil,
195
+ 'primarybios' => true,
196
+ 'releasedate' => '20130513000000.000000+000',
197
+ 'serialnumber' => '87GBNY1',
198
+ 'smbiosbiosversion' => 'A10',
199
+ 'smbiosmajorversion' => 2,
200
+ 'smbiosminorversion' => 7,
201
+ 'smbiospresent' => true,
202
+ 'softwareelementid' => 'A10',
203
+ 'softwareelementstate' => 3,
204
+ 'status' => 'OK',
205
+ 'systembiosmajorversion' => 4,
206
+ 'systembiosminorversion' => 6,
207
+ 'targetoperatingsystem' => 0,
208
+ 'version' => 'DELL - 1072009'
209
+ }])
60
210
  plugin.run
61
- expect(plugin[:virtualization]).to eq({'systems' => {}})
211
+ expect(plugin[:virtualization]).to eq('systems' => {})
62
212
  end
63
213
  end
64
214
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ohai
3
3
  version: !ruby/object:Gem::Version
4
- version: 8.7.0
4
+ version: 8.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Jacob
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-08 00:00:00.000000000 Z
11
+ date: 2015-12-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mime-types
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '2.0'
19
+ version: '3.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '2.0'
26
+ version: '3.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: systemu
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -254,20 +254,6 @@ dependencies:
254
254
  - - ">="
255
255
  - !ruby/object:Gem::Version
256
256
  version: '0'
257
- - !ruby/object:Gem::Dependency
258
- name: chef
259
- requirement: !ruby/object:Gem::Requirement
260
- requirements:
261
- - - ">="
262
- - !ruby/object:Gem::Version
263
- version: '0'
264
- type: :development
265
- prerelease: false
266
- version_requirements: !ruby/object:Gem::Requirement
267
- requirements:
268
- - - ">="
269
- - !ruby/object:Gem::Version
270
- version: '0'
271
257
  description: Ohai profiles your system and emits JSON
272
258
  email: adam@chef.io
273
259
  executables:
@@ -296,6 +282,7 @@ files:
296
282
  - lib/ohai/mash.rb
297
283
  - lib/ohai/mixin/command.rb
298
284
  - lib/ohai/mixin/constant_helper.rb
285
+ - lib/ohai/mixin/dmi_decode.rb
299
286
  - lib/ohai/mixin/ec2_metadata.rb
300
287
  - lib/ohai/mixin/gce_metadata.rb
301
288
  - lib/ohai/mixin/network_constants.rb
@@ -313,6 +300,8 @@ files:
313
300
  - lib/ohai/plugins/aix/uptime.rb
314
301
  - lib/ohai/plugins/aix/virtualization.rb
315
302
  - lib/ohai/plugins/azure.rb
303
+ - lib/ohai/plugins/bsd/filesystem.rb
304
+ - lib/ohai/plugins/bsd/virtualization.rb
316
305
  - lib/ohai/plugins/c.rb
317
306
  - lib/ohai/plugins/chef.rb
318
307
  - lib/ohai/plugins/cloud.rb
@@ -328,17 +317,20 @@ files:
328
317
  - lib/ohai/plugins/darwin/virtualization.rb
329
318
  - lib/ohai/plugins/digital_ocean.rb
330
319
  - lib/ohai/plugins/dmi.rb
320
+ - lib/ohai/plugins/dragonflybsd/cpu.rb
321
+ - lib/ohai/plugins/dragonflybsd/memory.rb
322
+ - lib/ohai/plugins/dragonflybsd/network.rb
323
+ - lib/ohai/plugins/dragonflybsd/os.rb
324
+ - lib/ohai/plugins/dragonflybsd/platform.rb
331
325
  - lib/ohai/plugins/ec2.rb
332
326
  - lib/ohai/plugins/elixir.rb
333
327
  - lib/ohai/plugins/erlang.rb
334
328
  - lib/ohai/plugins/eucalyptus.rb
335
329
  - lib/ohai/plugins/freebsd/cpu.rb
336
- - lib/ohai/plugins/freebsd/filesystem.rb
337
330
  - lib/ohai/plugins/freebsd/memory.rb
338
331
  - lib/ohai/plugins/freebsd/network.rb
339
332
  - lib/ohai/plugins/freebsd/os.rb
340
333
  - lib/ohai/plugins/freebsd/platform.rb
341
- - lib/ohai/plugins/freebsd/virtualization.rb
342
334
  - lib/ohai/plugins/gce.rb
343
335
  - lib/ohai/plugins/go.rb
344
336
  - lib/ohai/plugins/groovy.rb
@@ -364,22 +356,18 @@ files:
364
356
  - lib/ohai/plugins/lua.rb
365
357
  - lib/ohai/plugins/mono.rb
366
358
  - lib/ohai/plugins/netbsd/cpu.rb
367
- - lib/ohai/plugins/netbsd/filesystem.rb
368
359
  - lib/ohai/plugins/netbsd/memory.rb
369
360
  - lib/ohai/plugins/netbsd/network.rb
370
361
  - lib/ohai/plugins/netbsd/platform.rb
371
- - lib/ohai/plugins/netbsd/virtualization.rb
372
362
  - lib/ohai/plugins/network.rb
373
363
  - lib/ohai/plugins/network_listeners.rb
374
364
  - lib/ohai/plugins/nodejs.rb
375
365
  - lib/ohai/plugins/ohai.rb
376
366
  - lib/ohai/plugins/ohai_time.rb
377
367
  - lib/ohai/plugins/openbsd/cpu.rb
378
- - lib/ohai/plugins/openbsd/filesystem.rb
379
368
  - lib/ohai/plugins/openbsd/memory.rb
380
369
  - lib/ohai/plugins/openbsd/network.rb
381
370
  - lib/ohai/plugins/openbsd/platform.rb
382
- - lib/ohai/plugins/openbsd/virtualization.rb
383
371
  - lib/ohai/plugins/openstack.rb
384
372
  - lib/ohai/plugins/os.rb
385
373
  - lib/ohai/plugins/passwd.rb
@@ -410,6 +398,7 @@ files:
410
398
  - lib/ohai/plugins/solaris2/zpools.rb
411
399
  - lib/ohai/plugins/ssh_host_key.rb
412
400
  - lib/ohai/plugins/uptime.rb
401
+ - lib/ohai/plugins/virtualbox.rb
413
402
  - lib/ohai/plugins/virtualization.rb
414
403
  - lib/ohai/plugins/vmware.rb
415
404
  - lib/ohai/plugins/windows/cpu.rb
@@ -427,6 +416,7 @@ files:
427
416
  - lib/ohai/util/win32.rb
428
417
  - lib/ohai/util/win32/group_helper.rb
429
418
  - lib/ohai/version.rb
419
+ - ohai.gemspec
430
420
  - spec/data/plugins/___lib64___libc.so.6.output
431
421
  - spec/data/plugins/___lib___libc.so.6.output
432
422
  - spec/data/plugins/cc.output
@@ -449,6 +439,7 @@ files:
449
439
  - spec/data/plugins/what.output
450
440
  - spec/data/plugins/xlc.output
451
441
  - spec/functional/application_spec.rb
442
+ - spec/functional/loader_spec.rb
452
443
  - spec/functional/plugins/powershell_spec.rb
453
444
  - spec/functional/plugins/root_group_spec.rb
454
445
  - spec/ohai_spec.rb
@@ -477,6 +468,8 @@ files:
477
468
  - spec/unit/plugins/aix/uptime_spec.rb
478
469
  - spec/unit/plugins/aix/virtualization_spec.rb
479
470
  - spec/unit/plugins/azure_spec.rb
471
+ - spec/unit/plugins/bsd/filesystem_spec.rb
472
+ - spec/unit/plugins/bsd/virtualization_spec.rb
480
473
  - spec/unit/plugins/c_spec.rb
481
474
  - spec/unit/plugins/chef_spec.rb
482
475
  - spec/unit/plugins/cloud_spec.rb
@@ -504,7 +497,6 @@ files:
504
497
  - spec/unit/plugins/freebsd/kernel_spec.rb
505
498
  - spec/unit/plugins/freebsd/os_spec.rb
506
499
  - spec/unit/plugins/freebsd/platform_spec.rb
507
- - spec/unit/plugins/freebsd/virtualization_spec.rb
508
500
  - spec/unit/plugins/gce_spec.rb
509
501
  - spec/unit/plugins/go_spec.rb
510
502
  - spec/unit/plugins/groovy_spec.rb
@@ -555,6 +547,7 @@ files:
555
547
  - spec/unit/plugins/softlayer_spec.rb
556
548
  - spec/unit/plugins/solaris2/cpu_spec.rb
557
549
  - spec/unit/plugins/solaris2/dmi_spec.rb
550
+ - spec/unit/plugins/solaris2/filesystem.rb
558
551
  - spec/unit/plugins/solaris2/hostname_spec.rb
559
552
  - spec/unit/plugins/solaris2/kernel_spec.rb
560
553
  - spec/unit/plugins/solaris2/memory_spec.rb
@@ -563,6 +556,7 @@ files:
563
556
  - spec/unit/plugins/solaris2/virtualization_spec.rb
564
557
  - spec/unit/plugins/solaris2/zpools_spec.rb
565
558
  - spec/unit/plugins/ssh_host_keys_spec.rb
559
+ - spec/unit/plugins/virtualbox_spec.rb
566
560
  - spec/unit/plugins/vmware_spec.rb
567
561
  - spec/unit/plugins/windows/cpu_spec.rb
568
562
  - spec/unit/plugins/windows/memory_spec.rb
@@ -592,8 +586,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
592
586
  version: '0'
593
587
  requirements: []
594
588
  rubyforge_project:
595
- rubygems_version: 2.4.5
589
+ rubygems_version: 2.2.2
596
590
  signing_key:
597
591
  specification_version: 4
598
592
  summary: Ohai profiles your system and emits JSON
599
593
  test_files: []
594
+ has_rdoc:
@@ -1,94 +0,0 @@
1
- #
2
- # Author:: Bryan McLellan (btm@loftninjas.org)
3
- # Copyright:: Copyright (c) 2009 Bryan McLellan
4
- # License:: Apache License, Version 2.0
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
18
-
19
- Ohai.plugin(:Virtualization) do
20
- provides "virtualization"
21
-
22
- collect_data(:freebsd) do
23
- virtualization Mash.new
24
-
25
- so = shell_out("sysctl -n security.jail.jailed")
26
- if so.stdout.split($/)[0].to_i == 1
27
- virtualization[:system] = "jail"
28
- virtualization[:role] = "guest"
29
- end
30
-
31
- # detect from modules
32
- so = shell_out("#{ Ohai.abs_path( "/sbin/kldstat" )}")
33
- so.stdout.lines do |line|
34
- case line
35
- when /vboxdrv/
36
- virtualization[:system] = "vbox"
37
- virtualization[:role] = "host"
38
- when /vboxguest/
39
- virtualization[:system] = "vbox"
40
- virtualization[:role] = "guest"
41
- end
42
- end
43
-
44
- # XXX doesn't work when jail is there but not running (ezjail-admin stop)
45
- so = shell_out("jls -n")
46
- if ( so.stdout || "" ).lines.count >= 1
47
- virtualization[:system] = "jail"
48
- virtualization[:role] = "host"
49
- end
50
-
51
- # KVM Host support for FreeBSD is in development
52
- # http://feanor.sssup.it/~fabio/freebsd/lkvm/
53
-
54
- # Detect KVM/QEMU from cpu, report as KVM
55
- # hw.model: QEMU Virtual CPU version 0.9.1
56
- so = shell_out("sysctl -n hw.model")
57
- if so.stdout.split($/)[0] =~ /QEMU Virtual CPU|Common KVM processor|Common 32-bit KVM processor/
58
- virtualization[:system] = "kvm"
59
- virtualization[:role] = "guest"
60
- end
61
-
62
- # http://www.dmo.ca/blog/detecting-virtualization-on-linux
63
- if File.exists?("/usr/local/sbin/dmidecode")
64
- so = shell_out("dmidecode")
65
- found_virt_manufacturer = nil
66
- found_virt_product = nil
67
- so.stdout.lines do |line|
68
- case line
69
- when /Manufacturer: Microsoft/
70
- found_virt_manufacturer = "microsoft"
71
- when /Product Name: Virtual Machine/
72
- found_virt_product = "microsoft"
73
- when /Version: 5.0/
74
- if found_virt_manufacturer == "microsoft" && found_virt_product == "microsoft"
75
- virtualization[:system] = "virtualpc"
76
- virtualization[:role] = "guest"
77
- end
78
- when /Version: VS2005R2/
79
- if found_virt_manufacturer == "microsoft" && found_virt_product == "microsoft"
80
- virtualization[:system] = "virtualserver"
81
- virtualization[:role] = "guest"
82
- end
83
- when /Manufacturer: VMware/
84
- found_virt_manufacturer = "vmware"
85
- when /Product Name: VMware Virtual Platform/
86
- if found_virt_manufacturer == "vmware"
87
- virtualization[:system] = "vmware"
88
- virtualization[:role] = "guest"
89
- end
90
- end
91
- end
92
- end
93
- end
94
- end