From f2541eb45c2c640a898b6c0fe8ed2e22716e4c97 Mon Sep 17 00:00:00 2001 From: Jared Vititoe Date: Sat, 14 Mar 2026 22:08:48 -0400 Subject: [PATCH] =?UTF-8?q?fix:=20topology=20=E2=80=94=20all=20servers=20d?= =?UTF-8?q?ual-homed=2010G+1G,=20show=20mgmt=20band?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit All rack servers (and large1 on table) have both a 10G link to USW-Agg and a 1G management link to Pro 24 PoE. Update topology: - Move all 6 hosts into single row (including large1) - Update sublabels to "10G+1G" for all nodes - large1 dashed-border (off-rack) with "table · 10G+1G" - Add dashed amber "1G mgmt (PoE)" horizontal band above hosts to represent the PoE switch management connections - 10G primary fan-out lines still drop from Agg switch above - large1 primary line rendered as dashed green (off-rack run) Co-Authored-By: Claude Sonnet 4.6 --- static/style.css | 31 +++++++++++++++++++++ templates/index.html | 66 +++++++++++++++++++------------------------- 2 files changed, 59 insertions(+), 38 deletions(-) diff --git a/static/style.css b/static/style.css index 04dcfbf..4fdf55a 100644 --- a/static/style.css +++ b/static/style.css @@ -416,6 +416,37 @@ a:hover { text-decoration: underline; text-shadow: var(--glow-amber); } border-style: dashed; } +/* Dashed 10G line (for off-rack/table host) */ +.topo-line-dashed { + background: none; + border-left: 1px dashed var(--green); + opacity: .4; +} + +/* 1G management band — horizontal amber dashed line with label */ +.topo-mgmt-band { + display: flex; + align-items: center; + gap: 6px; + padding: 0 8px; + height: 16px; +} + +.topo-mgmt-label { + font-size: .52em; + color: var(--amber); + opacity: .65; + white-space: nowrap; + letter-spacing: .04em; +} + +.topo-mgmt-line { + flex: 1; + height: 1px; + border-top: 1px dashed var(--amber); + opacity: .4; +} + /* ── Host cards ───────────────────────────────────────────────────── */ .host-grid { display: grid; diff --git a/templates/index.html b/templates/index.html index b9dccfb..a787c3c 100644 --- a/templates/index.html +++ b/templates/index.html @@ -73,58 +73,48 @@ - +
- -
-
-
-
-
-
-
-
-
+ +
+
+
+
+
+
+
+
+ + +
+ 1G mgmt (PoE) +
+
+ +
{%- set topo_h = snapshot.hosts if snapshot.hosts else {} -%} - {%- set agg_defs = [ - ('compute-storage-gpu-01', 'csg-01', 'RU4–12 · 10G'), - ('compute-storage-01', 'cs-01', 'RU14–17 · 10G'), - ('storage-01', 'storage-01','10G SFP+'), - ('monitor-01', 'monitor-01','ZimaBoard · 10G'), - ('monitor-02', 'monitor-02','ZimaBoard · 10G'), + {%- set all_defs = [ + ('compute-storage-gpu-01', 'csg-01', 'RU4–12 · 10G+1G', False), + ('compute-storage-01', 'cs-01', 'RU14–17 · 10G+1G', False), + ('storage-01', 'storage-01','rack · 10G+1G', False), + ('monitor-01', 'monitor-01','ZimaBoard · 10G+1G', False), + ('monitor-02', 'monitor-02','ZimaBoard · 10G+1G', False), + ('large1', 'large1', 'table · 10G+1G', True), ] -%} - {%- for hname, hlabel, hsub in agg_defs -%} + {%- for hname, hlabel, hsub, off_rack in all_defs -%} {%- set st = topo_h[hname].status if hname in topo_h else 'unknown' -%} -
+
{{ hlabel }} {{ hsub }} {{ st if st != 'unknown' else '–' }}
{%- endfor -%} -
+
- - -
-
-
-
-
- {%- set topo_h = snapshot.hosts if snapshot.hosts else {} -%} - {%- set lst = topo_h['large1'].status if 'large1' in topo_h else 'unknown' -%} -
- - large1 - on table · 1G - {{ lst if lst != 'unknown' else '–' }} -
-
-
-