diff options
author | Tim Smith <tsmith84@gmail.com> | 2015-11-26 20:46:38 -0800 |
---|---|---|
committer | Tim Smith <tsmith84@gmail.com> | 2015-11-26 20:46:38 -0800 |
commit | ebeb43911a65a39ab0b5ffb49e2f9eae7dfe61f4 (patch) | |
tree | 92d0fb235f24425a4c463b68335314de832eee13 | |
parent | a963d49231c0c83d4088e3dcd24e364f5e8c0d51 (diff) | |
download | ohai-ebeb43911a65a39ab0b5ffb49e2f9eae7dfe61f4.tar.gz |
Use systems format for virtualization host / guests
Also don't create the virtualization mash if it already exists. The
main non-platform virtualization plugin may have already dropped off
data here
-rw-r--r-- | lib/ohai/plugins/bsd/virtualization.rb | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/ohai/plugins/bsd/virtualization.rb b/lib/ohai/plugins/bsd/virtualization.rb index 608c0230..c199036f 100644 --- a/lib/ohai/plugins/bsd/virtualization.rb +++ b/lib/ohai/plugins/bsd/virtualization.rb @@ -20,7 +20,8 @@ Ohai.plugin(:Virtualization) do provides 'virtualization' collect_data(:freebsd, :openbsd, :netbsd, :dragonflybsd) do - virtualization Mash.new + virtualization Mash.new unless virtualization + virtualization[:systems] = Mash.new unless virtualization[:systems] so = shell_out("sysctl -n security.jail.jailed") if so.stdout.split($/)[0].to_i == 1 @@ -35,9 +36,11 @@ Ohai.plugin(:Virtualization) do when /vboxdrv/ virtualization[:system] = 'vbox' virtualization[:role] = 'host' + virtualization[:systems][:vbox] = 'host' when /vboxguest/ virtualization[:system] = 'vbox' virtualization[:role] = 'guest' + virtualization[:systems][:vbox] = 'guest' end end @@ -46,6 +49,7 @@ Ohai.plugin(:Virtualization) do if (so.stdout || '').lines.count >= 1 virtualization[:system] = 'jail' virtualization[:role] = 'host' + virtualization[:systems][:jail] = 'host' end # KVM Host support for FreeBSD is in development @@ -57,6 +61,7 @@ Ohai.plugin(:Virtualization) do if so.stdout.split($INPUT_RECORD_SEPARATOR)[0] =~ /QEMU Virtual CPU|Common KVM processor|Common 32-bit KVM processor/ virtualization[:system] = 'kvm' virtualization[:role] = 'guest' + virtualization[:systems][:kvm] = 'guest' end # http://www.dmo.ca/blog/detecting-virtualization-on-linux @@ -68,6 +73,7 @@ Ohai.plugin(:Virtualization) do if so.stdout =~ /Version: VS2005R2/ virtualization[:system] = 'virtualserver' virtualization[:role] = 'guest' + virtualization[:systems][:virtualserver] = 'guest' else virtualization[:system] = 'virtualpc' virtualization[:role] = 'guest' |