summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTheodore Nordsieck <theo@opscode.com>2013-09-10 08:52:35 -0700
committerTheodore Nordsieck <theo@opscode.com>2013-09-11 16:13:24 -0700
commit66af6fd4046e3f341cf6ee54a290accd66983fb0 (patch)
tree576008501e4d76099f1cd839df9b554d93676a37
parentb371021d5d1c415e9e9502cfe17886cf2c016fe6 (diff)
downloadohai-66af6fd4046e3f341cf6ee54a290accd66983fb0.tar.gz
Converted plugins/openbsd/virtualization to Mixlib::ShellOut.
-rw-r--r--lib/ohai/plugins/openbsd/virtualization.rb56
1 files changed, 27 insertions, 29 deletions
diff --git a/lib/ohai/plugins/openbsd/virtualization.rb b/lib/ohai/plugins/openbsd/virtualization.rb
index a74f6228..142fa648 100644
--- a/lib/ohai/plugins/openbsd/virtualization.rb
+++ b/lib/ohai/plugins/openbsd/virtualization.rb
@@ -27,44 +27,42 @@ Ohai.plugin do
# Detect KVM/QEMU from cpu, report as KVM
# hw.model: QEMU Virtual CPU version 0.9.1
- if from("sysctl -n hw.model") =~ /QEMU Virtual CPU/
+ so = shell_out("sysctl -n hw.model")
+ if so.stdout.split($/)[0] =~ /QEMU Virtual CPU/
virtualization[:system] = "kvm"
virtualization[:role] = "guest"
end
# http://www.dmo.ca/blog/detecting-virtualization-on-linux
if File.exists?("/usr/local/sbin/dmidecode")
- popen4("dmidecode") do |pid, stdin, stdout, stderr|
- stdin.close
- found_virt_manufacturer = nil
- found_virt_product = nil
- stdout.each do |line|
- case line
- when /Manufacturer: Microsoft/
- found_virt_manufacturer = "microsoft"
- when /Product Name: Virtual Machine/
- found_virt_product = "microsoft"
- when /Version: 5.0/
- if found_virt_manufacturer == "microsoft" && found_virt_product == "microsoft"
- virtualization[:system] = "virtualpc"
- virtualization[:role] = "guest"
- end
- when /Version: VS2005R2/
- if found_virt_manufacturer == "microsoft" && found_virt_product == "microsoft"
- virtualization[:system] = "virtualserver"
- virtualization[:role] = "guest"
- end
- when /Manufacturer: VMware/
- found_virt_manufacturer = "vmware"
- when /Product Name: VMware Virtual Platform/
- if found_virt_manufacturer == "vmware"
- virtualization[:system] = "vmware"
- virtualization[:role] = "guest"
- end
+ so = shell_out("dmidecode")
+ found_virt_manufacturer = nil
+ found_virt_product = nil
+ so.stdout.lines do |line|
+ case line
+ when /Manufacturer: Microsoft/
+ found_virt_manufacturer = "microsoft"
+ when /Product Name: Virtual Machine/
+ found_virt_product = "microsoft"
+ when /Version: 5.0/
+ if found_virt_manufacturer == "microsoft" && found_virt_product == "microsoft"
+ virtualization[:system] = "virtualpc"
+ virtualization[:role] = "guest"
+ end
+ when /Version: VS2005R2/
+ if found_virt_manufacturer == "microsoft" && found_virt_product == "microsoft"
+ virtualization[:system] = "virtualserver"
+ virtualization[:role] = "guest"
+ end
+ when /Manufacturer: VMware/
+ found_virt_manufacturer = "vmware"
+ when /Product Name: VMware Virtual Platform/
+ if found_virt_manufacturer == "vmware"
+ virtualization[:system] = "vmware"
+ virtualization[:role] = "guest"
end
end
end
end
end
end
-