summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Smith <tsmith@chef.io>2018-03-16 12:30:02 -0700
committerBryan McLellan <btm@loftninjas.org>2018-03-27 14:00:13 -0400
commitf5c93b5f69ea11788fd8d0c259e5456cfb7681a0 (patch)
treeac1dbc02e30263f19fff0864b79caad42ce3e6c9
parent7546fc72726f56e11b366f40ffbbb00c34eaf346 (diff)
downloadohai-f5c93b5f69ea11788fd8d0c259e5456cfb7681a0.tar.gz
Use boot_rom_version to detect VMware guests on macOS
Signed-off-by: Tim Smith <tsmith@chef.io>
-rw-r--r--lib/ohai/plugins/darwin/virtualization.rb2
-rw-r--r--spec/unit/plugins/darwin/virtualization_spec.rb3
2 files changed, 2 insertions, 3 deletions
diff --git a/lib/ohai/plugins/darwin/virtualization.rb b/lib/ohai/plugins/darwin/virtualization.rb
index 516e57fb..d9447831 100644
--- a/lib/ohai/plugins/darwin/virtualization.rb
+++ b/lib/ohai/plugins/darwin/virtualization.rb
@@ -60,7 +60,7 @@ Ohai.plugin(:Virtualization) do
virtualization[:systems][:vmware] = "host"
end
- if hardware[:machine_model].match?(/vmware/i)
+ if hardware[:boot_rom_version].match?(/VMW/i)
virtualization[:system] = "vmware"
virtualization[:role] = "guest"
virtualization[:systems][:vmware] = "guest"
diff --git a/spec/unit/plugins/darwin/virtualization_spec.rb b/spec/unit/plugins/darwin/virtualization_spec.rb
index e005a0a0..3c47ec1d 100644
--- a/spec/unit/plugins/darwin/virtualization_spec.rb
+++ b/spec/unit/plugins/darwin/virtualization_spec.rb
@@ -32,7 +32,6 @@ describe Ohai::System, "Darwin virtualization platform" do
allow(plugin).to receive(:docker_exists?).and_return(false)
plugin[:hardware] = Mash.new
plugin[:hardware][:boot_rom_version] = "not_a_vm"
- plugin[:hardware][:machine_model] = "not_a_vm"
end
describe "when detecting OS X virtualization" do
@@ -50,7 +49,7 @@ describe Ohai::System, "Darwin virtualization platform" do
end
it "should set vmware guest if hardware attributes mention vmware" do
- plugin[:hardware][:machine_model] = "VMware"
+ plugin[:hardware][:boot_rom_version] = "VMW71.00V.6997262.B64.1710270607"
plugin.run
expect(plugin[:virtualization][:system]).to eq("vmware")
expect(plugin[:virtualization][:role]).to eq("guest")