From 03a29fc90e58c7df70b46061623655263bdef3ad Mon Sep 17 00:00:00 2001
From: Lucas Nussbaum <lucas.nussbaum@loria.fr>
Date: Sat, 15 Feb 2020 08:03:27 +0100
Subject: [PATCH] [dev] Move firmwares stuff to different file

---
 Rakefile                   |  8 ++++++++
 lib/refrepo/data_loader.rb | 27 ---------------------------
 lib/refrepo/firmwares.rb   | 31 +++++++++++++++++++++++++++++++
 3 files changed, 39 insertions(+), 27 deletions(-)
 create mode 100644 lib/refrepo/firmwares.rb

diff --git a/Rakefile b/Rakefile
index 783af900383..da0d0a622e4 100644
--- a/Rakefile
+++ b/Rakefile
@@ -228,6 +228,8 @@ end
 namespace :version do
   desc 'Get bios, bmc and firmwares version -- parameters: MODEL={630,6420,...}'
   task :get do
+    require 'refrepo/firmwares'
+
     model = ENV['MODEL']
     raise 'need MODEL=' if model.nil?
 
@@ -241,6 +243,12 @@ namespace :version do
       puts "#{node['uid']} : #{version}"
     end
   end
+
+  desc 'Build an HTML table with firmware versions'
+  task :table do
+    require 'refrepo/firmwares'
+    gen_firmwares_tables
+  end
 end
 
 
diff --git a/lib/refrepo/data_loader.rb b/lib/refrepo/data_loader.rb
index d1c97eaf1a1..ed19e5ea024 100644
--- a/lib/refrepo/data_loader.rb
+++ b/lib/refrepo/data_loader.rb
@@ -39,30 +39,3 @@ def load_data_hierarchy
 
   return global_hash
 end
-
-def nodes_by_model(model)
-  nodes = []
-  data = load_data_hierarchy
-  data['sites'].keys.each do |site|
-    data['sites'][site]['clusters'].each do |cluster|
-      c = cluster.last
-      c['nodes'].each do |_, v|
-        nodes << v
-      end
-    end
-  end
-  model_filter = nodes.select do |node|
-    node['chassis']['name'] =~ /#{model}/
-  end
-  model_filter
-end
-
-def get_firmware_version(devices)
-  version = Hash.new
-  devices.each do |device|
-    if device.has_key?("firmware_version")
-      version[device['model']] = device['firmware_version']
-    end
-  end
-  version
-end
diff --git a/lib/refrepo/firmwares.rb b/lib/refrepo/firmwares.rb
new file mode 100644
index 00000000000..061eaf9e3b4
--- /dev/null
+++ b/lib/refrepo/firmwares.rb
@@ -0,0 +1,31 @@
+require 'refrepo/data_loader'
+
+def nodes_by_model(model)
+  nodes = []
+  data = load_data_hierarchy
+  data['sites'].keys.each do |site|
+    data['sites'][site]['clusters'].each do |cluster|
+      c = cluster.last
+      c['nodes'].each do |_, v|
+        nodes << v
+      end
+    end
+  end
+  model_filter = nodes.select do |node|
+    node['chassis']['name'] =~ /#{model}/
+  end
+  model_filter
+end
+
+def get_firmware_version(devices)
+  version = Hash.new
+  devices.each do |device|
+    if device.has_key?("firmware_version")
+      version[device['model']] = device['firmware_version']
+    end
+  end
+  version
+end
+
+def gen_firmwares_table
+end
-- 
GitLab