summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSaravanan D <saravanand@fb.com>2023-02-28 15:45:17 -0800
committerGitHub <noreply@github.com>2023-02-28 15:45:17 -0800
commitaa30dd7905824bd7c0770cd72999d3b5c669b7db (patch)
tree8b9d9e2fe696fb76455b406cbd41d6f07b1dfc1c
parentb846145fdce2fbb21b760ad83b1b54a49c43ba8a (diff)
downloadohai-aa30dd7905824bd7c0770cd72999d3b5c669b7db.tar.gz
[block_device] Record firmware revision of nvme block devices (#1787)
Enhancing the plugin to record the firmware of nvme block devices whose sysfs endpoint differs from HDD Signed-off-by: Saravanan D <saravanand@fb.com>
-rw-r--r--lib/ohai/plugins/linux/block_device.rb2
-rw-r--r--spec/unit/plugins/linux/block_device_spec.rb7
2 files changed, 8 insertions, 1 deletions
diff --git a/lib/ohai/plugins/linux/block_device.rb b/lib/ohai/plugins/linux/block_device.rb
index 36905fc4..9434e6d5 100644
--- a/lib/ohai/plugins/linux/block_device.rb
+++ b/lib/ohai/plugins/linux/block_device.rb
@@ -31,7 +31,7 @@ Ohai.plugin(:BlockDevice) do
file_open("/sys/block/#{dir}/#{check}") { |f| block[dir][check] = f.read_nonblock(1024).strip }
end
end
- %w{model rev state timeout vendor queue_depth}.each do |check|
+ %w{model rev state timeout vendor queue_depth firmware_rev}.each do |check|
if file_exist?("/sys/block/#{dir}/device/#{check}")
file_open("/sys/block/#{dir}/device/#{check}") { |f| block[dir][check] = f.read_nonblock(1024).strip }
end
diff --git a/spec/unit/plugins/linux/block_device_spec.rb b/spec/unit/plugins/linux/block_device_spec.rb
index ce273b92..5b60ddb6 100644
--- a/spec/unit/plugins/linux/block_device_spec.rb
+++ b/spec/unit/plugins/linux/block_device_spec.rb
@@ -29,6 +29,13 @@ describe Ohai::System, "Linux Block Device Plugin" do
"queue_depth" => "1",
"vendor" => "ATA",
},
+ "nvme0n1" => {
+ "size" => "500118192",
+ "removable" => "0",
+ "model" => "KXG50ZNV256G TOSHIBA",
+ "state" => "live",
+ "firmware_rev" => "AAGA4103",
+ },
"dm-0" => {
"size" => "7806976",
"removable" => "0",