radfish 0.2.9 → 0.2.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3eb7e0fad9f1c58627bb67908c36b48ee6345502dd697d060bfb2a2269168779
4
- data.tar.gz: 1d0773d739fc075885f9c49abaf719394695af6e7120c2d42b0478638f78d0f7
3
+ metadata.gz: ad19da6f011320835b8e6fc236057a1613a6c01da37672361a06b2b4affe120c
4
+ data.tar.gz: e6ef687e6b6c87b653c6bfe52d4781057007032f956618b9f8348eb32874e171
5
5
  SHA512:
6
- metadata.gz: 86cb61d2ce44dc0443bd41236074670645e8f16b8d6daa316b54159a6ebcacdf60184cc29ccbbce10747cd878a38b596703b631b2ef8b7e7fa8f922718928ed5
7
- data.tar.gz: ee102d72d959c36cf16f997ebf8bacb9ae8ed6811b68fc6a08961510f85565e46ec132f42bd6d58da5b06af0acfb12fa543b9e3178abc1e86b69bfde01a582b9
6
+ metadata.gz: 5f9d5decaf01d69e5098bad75775706f775f81824aa0653fdde5add5561c014eb7169cf6b2eb2c685cb49c1937f196149ca2aa13075ec55ad3765743494b26b7
7
+ data.tar.gz: 4e75db9b41a4edf1468bd695eb1014b7943435aeeb8ef75b7dbd1181b233aca8b98946ea003a628461a8344d04a326c0b2f4587c20c2589d419c09e5f76b34e5
data/lib/radfish/cli.rb CHANGED
@@ -340,7 +340,15 @@ module Radfish
340
340
  case subcommand
341
341
  when 'summary', 'all'
342
342
  data = client.storage_summary
343
- output_result(data, nil) if options[:json]
343
+ if options[:json]
344
+ puts JSON.pretty_generate(data)
345
+ else
346
+ puts "=== Storage Summary ===".green
347
+ puts "Total Controllers: #{data[:controller_count]}".cyan
348
+ data[:controllers]&.each do |ctrl|
349
+ puts " #{ctrl[:name] || ctrl[:id]}: #{ctrl[:drive_count]} drives, #{ctrl[:volume_count]} volumes".cyan
350
+ end
351
+ end
344
352
  when 'controllers'
345
353
  ctrls = client.controllers
346
354
  if options[:json]
@@ -124,7 +124,9 @@ module Radfish
124
124
  when /lenovo/i, /thinkserver/i, /thinksystem/i
125
125
  return 'lenovo'
126
126
  when /asrockrack/i, /asrock/i
127
- return 'asrockrack'
127
+ return 'ami'
128
+ when /ami/i, /megarac/i
129
+ return 'ami'
128
130
  end
129
131
  end
130
132
 
@@ -167,7 +169,8 @@ module Radfish
167
169
  return 'hpe' if model.match?(/ilo/i) || description.match?(/ilo/i)
168
170
  return 'supermicro' if model.match?(/supermicro/i) || description.match?(/smc/i)
169
171
  return 'lenovo' if model.match?(/lenovo/i) || description.match?(/xcc/i)
170
- return 'asrockrack' if model.match?(/asrock/i)
172
+ return 'ami' if model.match?(/asrock/i) || description.match?(/asrock/i)
173
+ return 'ami' if description.match?(/bmc/i) && manager_data.dig('Oem', 'Ami')
171
174
  end
172
175
  end
173
176
  end
@@ -199,7 +202,9 @@ module Radfish
199
202
  when /lenovo/i
200
203
  'lenovo'
201
204
  when /asrock/i
202
- 'asrockrack'
205
+ 'ami'
206
+ when /ami/i, /megarac/i
207
+ 'ami'
203
208
  else
204
209
  vendor_string.to_s.downcase
205
210
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Radfish
4
- VERSION = "0.2.9"
4
+ VERSION = "0.2.10"
5
5
  end
data/lib/radfish.rb CHANGED
@@ -98,13 +98,19 @@ require_relative 'radfish/client'
98
98
 
99
99
  # Auto-load adapters if available
100
100
  begin
101
- require 'radfish/idrac_adapter'
101
+ require 'radfish-idrac'
102
102
  rescue LoadError
103
103
  # radfish-idrac gem not installed
104
104
  end
105
105
 
106
106
  begin
107
- require 'radfish/supermicro_adapter'
107
+ require 'radfish-supermicro'
108
108
  rescue LoadError
109
109
  # radfish-supermicro gem not installed
110
110
  end
111
+
112
+ begin
113
+ require 'radfish-ami'
114
+ rescue LoadError
115
+ # radfish-ami gem not installed
116
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: radfish
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.9
4
+ version: 0.2.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jonathan Siegel
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2025-09-18 00:00:00.000000000 Z
11
+ date: 2025-12-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor