summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Smith <tsmith@chef.io>2018-12-03 13:21:22 -0800
committerGitHub <noreply@github.com>2018-12-03 13:21:22 -0800
commitc88812b0137ee4c579cff74d940dc8d5073b2cd2 (patch)
treea93364414d0e7c0756d8c933ecd55935294dc3a1
parent4878c100a63984809dd9f472602afb7f9900888f (diff)
parent20e59da4f973120a3115c6382b391010e3fcfeab (diff)
downloadohai-c88812b0137ee4c579cff74d940dc8d5073b2cd2.tar.gz
Merge pull request #1312 from chef/fix_arista
Fix arista platform detection
-rw-r--r--lib/ohai/plugins/linux/platform.rb6
-rw-r--r--spec/unit/plugins/linux/platform_spec.rb6
2 files changed, 7 insertions, 5 deletions
diff --git a/lib/ohai/plugins/linux/platform.rb b/lib/ohai/plugins/linux/platform.rb
index e0912f2b..a9de8d54 100644
--- a/lib/ohai/plugins/linux/platform.rb
+++ b/lib/ohai/plugins/linux/platform.rb
@@ -212,6 +212,9 @@ Ohai.plugin(:Platform) do
contents = File.read("/etc/parallels-release").chomp
platform get_redhatish_platform(contents)
platform_version contents.match(/(\d\.\d\.\d)/)[0]
+ elsif File.exist?("/etc/Eos-release")
+ platform "arista_eos"
+ platform_version File.read("/etc/Eos-release").strip.split[-1]
elsif File.exist?("/etc/redhat-release")
contents = File.read("/etc/redhat-release").chomp
platform get_redhatish_platform(contents)
@@ -235,9 +238,6 @@ Ohai.plugin(:Platform) do
else
platform "suse"
end
- elsif File.exist?("/etc/Eos-release")
- platform "arista_eos"
- platform_version File.read("/etc/Eos-release").strip.split[-1]
elsif os_release_file_is_cisco?
raise "unknown Cisco /etc/os-release or /etc/cisco-release ID_LIKE field" if
os_release_info["ID_LIKE"].nil? || !os_release_info["ID_LIKE"].include?("wrlinux")
diff --git a/spec/unit/plugins/linux/platform_spec.rb b/spec/unit/plugins/linux/platform_spec.rb
index 43c66b63..cf360ebe 100644
--- a/spec/unit/plugins/linux/platform_spec.rb
+++ b/spec/unit/plugins/linux/platform_spec.rb
@@ -461,6 +461,8 @@ OS_DATA
describe "on arista eos" do
+ let(:have_system_release) { true }
+ let(:have_redhat_release) { true }
let(:have_eos_release) { true }
before(:each) do
@@ -468,11 +470,11 @@ OS_DATA
end
it "should set platform to arista_eos" do
- expect(File).to receive(:read).with("/etc/Eos-release").and_return("Arista Networks EOS 4.16.7M")
+ expect(File).to receive(:read).with("/etc/Eos-release").and_return("Arista Networks EOS 4.21.1.1F")
plugin.run
expect(plugin[:platform]).to eq("arista_eos")
expect(plugin[:platform_family]).to eq("fedora")
- expect(plugin[:platform_version]).to eq("4.16.7M")
+ expect(plugin[:platform_version]).to eq("4.21.1.1F")
end
end