diff --git a/lib/refrepo/gen/wiki/generators/environments.rb b/lib/refrepo/gen/wiki/generators/environments.rb index fe8c13bedfdb7816fadb917155424148ee408767..3d24e652e7238f57bc0b1a02919dc3a7e52bae31 100644 --- a/lib/refrepo/gen/wiki/generators/environments.rb +++ b/lib/refrepo/gen/wiki/generators/environments.rb @@ -42,7 +42,7 @@ class EnvironmentsGenerator < WikiGenerator table_data = [] envs = [] - G5K::SITES.each do |site| + G5K::get_sites_in_production.each do |site| envs += RefRepo::Utils::get_api("sites/#{site}/internal/kadeployapi/environments?username=deploy&last") end envs.select!{|x| x['visibility'] == 'public'} diff --git a/lib/refrepo/gen/wiki/generators/hardware.rb b/lib/refrepo/gen/wiki/generators/hardware.rb index df47812e8f3db41f6473dfdce0ea7e2b5cd00016..c04ce28793ab99da1bde996a50c902da1d20c84c 100644 --- a/lib/refrepo/gen/wiki/generators/hardware.rb +++ b/lib/refrepo/gen/wiki/generators/hardware.rb @@ -5,12 +5,12 @@ class G5KHardwareGenerator < WikiGenerator def generate_content(_options) @global_hash = get_global_hash - @site_uids = G5K::SITES + @site_uids = G5K::get_sites_in_production @generated_content = "__NOEDITSECTION__\n" @generated_content += "{{Portal|User}}\n" - @generated_content += "<div class=\"sitelink\">Hardware: [[Hardware|Global]] | " + G5K::SITES.map { |e| "[[#{e.capitalize}:Hardware|#{e.capitalize}]]" }.join(" | ") + "</div>\n" - @generated_content += SiteHardwareGenerator.generate_header_summary(@global_hash['sites']) + @generated_content += "<div class=\"sitelink\">Hardware: [[Hardware|Global]] | " + G5K::get_sites_in_production.map { |e| "[[#{e.capitalize}:Hardware|#{e.capitalize}]]" }.join(" | ") + "</div>\n" + @generated_content += SiteHardwareGenerator.generate_header_summary(@global_hash['sites'].select{|_site_uid, site_hash| site_hash['production'] == true}) @generated_content += "\n= Clusters =\n" @generated_content += SiteHardwareGenerator.generate_all_clusters @generated_content += generate_totals @@ -35,6 +35,7 @@ class G5KHardwareGenerator < WikiGenerator } @global_hash['sites'].sort.to_h.each { |site_uid, site_hash| + next if site_hash['production'] == false site_hash.fetch('clusters', {}).sort.to_h.each { |_cluster_uid, cluster_hash| cluster_hash['nodes'].sort.to_h.each { |node_uid, node_hash| begin @@ -369,6 +370,7 @@ class G5KHardwareGenerator < WikiGenerator # Loop over Grid'5000 sites global_hash["sites"].sort.to_h.each do |site_uid, site_hash| + next if site_hash['production'] == false site_hash.fetch("clusters", {}).sort.to_h.each do |cluster_uid, cluster_hash| nodes_data = [] cluster_hash.fetch('nodes').sort.to_h.each do |node_uid, node_hash| @@ -431,6 +433,7 @@ class G5KHardwareGenerator < WikiGenerator def generate_interfaces table_data = [] @global_hash["sites"].sort.to_h.each { |site_uid, site_hash| + next if site_hash['production'] == false site_hash.fetch("clusters", {}).sort.to_h.each { |cluster_uid, cluster_hash| network_interfaces = {} cluster_hash.fetch('nodes').sort.to_h.each { |node_uid, node_hash| @@ -481,6 +484,7 @@ class G5KHardwareGenerator < WikiGenerator def generate_sriov_interfaces table_data = [] @global_hash["sites"].sort.to_h.each { |site_uid, site_hash| + next if site_hash['production'] == false site_hash.fetch("clusters", {}).sort.to_h.each { |cluster_uid, cluster_hash| network_interfaces = {} cluster_hash.fetch('nodes').sort.to_h.each { |node_uid, node_hash| diff --git a/lib/refrepo/gen/wiki/generators/site_hardware.rb b/lib/refrepo/gen/wiki/generators/site_hardware.rb index 757223d53ea057b53eedd8f2fbd80789302d491c..fcbf2e3b952fc98641f2914169bc4135ed99e11c 100644 --- a/lib/refrepo/gen/wiki/generators/site_hardware.rb +++ b/lib/refrepo/gen/wiki/generators/site_hardware.rb @@ -31,7 +31,7 @@ class SiteHardwareGenerator < WikiGenerator @generated_content = "__NOTOC__\n__NOEDITSECTION__\n" + "{{Portal|User}}\n" + - "<div class=\"sitelink\">Hardware: [[Hardware|Global]] | " + G5K::SITES.map { |e| "[[#{e.capitalize}:Hardware|#{e.capitalize}]]" }.join(" | ") + "</div>\n" + + "<div class=\"sitelink\">Hardware: [[Hardware|Global]] | " + G5K::get_sites_in_production.map { |e| "[[#{e.capitalize}:Hardware|#{e.capitalize}]]" }.join(" | ") + "</div>\n" + "'''See also:''' [[#{@site.capitalize}:Network|Network topology for #{@site.capitalize}]]\n" + "#{SiteHardwareGenerator.generate_header_summary({@site => G5K::get_global_hash['sites'][@site]})}\n" + "= Clusters =\n" + @@ -45,7 +45,7 @@ class SiteHardwareGenerator < WikiGenerator def self.generate_all_clusters table_columns = [] table_data = [] - G5K::SITES.each{ |site| + G5K::get_sites_in_production.each{ |site| table_columns = self.generate_summary_data(site, true)[0] table_data += self.generate_summary_data(site, true)[1] } @@ -66,6 +66,7 @@ class SiteHardwareGenerator < WikiGenerator flops = 0 sites_hash.sort.to_h.each do |_site_uid, site_hash| + next if site_hash['production'] == false clusters_hash = site_hash.fetch('clusters', {}) clusters += clusters_hash.length clusters_hash.sort.to_h.each do |_cluster_uid, cluster_hash| @@ -349,6 +350,7 @@ def get_hardware(sites) # Loop over each cluster of the site hardware = {} global_hash['sites'].sort.to_h.select{ |site_uid, _site_hash| sites.include?(site_uid) }.each { |site_uid, site_hash| + next if site_hash['production'] == false hardware[site_uid] = {} site_hash.fetch('clusters', {}).sort.to_h.each { |cluster_uid, cluster_hash| hardware[site_uid][cluster_uid] = {} diff --git a/lib/refrepo/gen/wiki/generators/status.rb b/lib/refrepo/gen/wiki/generators/status.rb index 9ad5d4fa720c6246a62262530536bd89f5b0a66f..3a22147c8550470eacc1f400b42bf8ea4de2b089 100644 --- a/lib/refrepo/gen/wiki/generators/status.rb +++ b/lib/refrepo/gen/wiki/generators/status.rb @@ -4,7 +4,7 @@ class StatusGenerator < WikiGenerator def generate_content(_options) @global_hash = get_global_hash - @site_uids = G5K::SITES + @site_uids = G5K::get_sites_in_production @sites_number = @site_uids.length() @generated_content = "__NOEDITSECTION__\n" diff --git a/lib/refrepo/gen/wiki/mw_utils.rb b/lib/refrepo/gen/wiki/mw_utils.rb index 6a9654753e40069e521e4eb40874196728bf96ae..47c5341d452e96624e14701207669df575caa126 100644 --- a/lib/refrepo/gen/wiki/mw_utils.rb +++ b/lib/refrepo/gen/wiki/mw_utils.rb @@ -129,6 +129,18 @@ module G5K return Marshal.load(Marshal.dump(@@global_hash)) end + @@sites_in_production = nil + def self.get_sites_in_production + if @@sites_in_production.nil? + self.get_global_hash if @@global_hash.nil? + @@sites_in_production = @@global_hash['sites'] + .select{|_site_uid, site_hash| site_hash['production'] == true} + .map{|site_uid, _site_hash| site_uid} + .sort() + end + return @@sites_in_production + end + SITES = RefRepo::Utils::get_sites end