From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gate001.proxmox.com (gate001.proxmox.com [45.144.208.40]) by lore.proxmox.com (Postfix) with ESMTPS id B6B7A1FF0DF for ; Fri, 28 Aug 2026 13:34:40 +0200 (CEST) Received: from gate001.proxmox.com (localhost.localdomain [127.0.0.1]) by gate001.proxmox.com (Proxmox) with ESMTP id 6D4C3216BB; Fri, 28 Aug 2026 13:33:40 +0200 (CEST) From: Gabriel Goller To: pve-devel@lists.proxmox.com Subject: [PATCH pve-gui-tests v3 13/13] fabrics: add screenshots for IS-IS fabric and nodes Date: Fri, 28 Aug 2026 13:32:52 +0200 Message-ID: <20260828113255.176546-14-g.goller@proxmox.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260828113255.176546-1-g.goller@proxmox.com> References: <20260828113255.176546-1-g.goller@proxmox.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1787916771353 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.424 Adjusted score from AWL reputation of From: address DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment (newer systems) RCVD_IN_DNSWL_MED -2.3 Sender listed at https://www.dnswl.org/, medium trust SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Message-ID-Hash: QNYXZB5VKNFVQ5EQ7DJAN2FDBULXMQGR X-Message-ID-Hash: QNYXZB5VKNFVQ5EQ7DJAN2FDBULXMQGR X-MailFrom: g.goller@proxmox.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox VE development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Add IS-IS fabric and node screenshots. Signed-off-by: Gabriel Goller --- pve/fabrics-screenshots | 47 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/pve/fabrics-screenshots b/pve/fabrics-screenshots index 726a8d88a731..b028b339ef19 100755 --- a/pve/fabrics-screenshots +++ b/pve/fabrics-screenshots @@ -13,6 +13,7 @@ sub prepare_fabrics { my ($conn) = @_; eval { # might not exist, so ignore any errors + $conn->delete("/cluster/sdn/fabrics/fabric/test3"); $conn->delete("/cluster/sdn/fabrics/fabric/test2"); $conn->delete("/cluster/sdn/fabrics/fabric/test1"); }; @@ -29,14 +30,25 @@ sub prepare_fabrics { ip_prefix => "198.51.100.0/24", protocol => "ospf", }; + my $isis = { + id => "test3", + ip_prefix => "192.0.15.0/24", + hello_interval => "1", + protocol => "isis", + }; $conn->post("/cluster/sdn/fabrics/fabric", $openfabric); $conn->post("/cluster/sdn/fabrics/fabric", $ospf); + $conn->post("/cluster/sdn/fabrics/fabric", $isis); + } sub prepare_nodes { my ($conn) = @_; eval { # might not exist, so ignore any errors + $conn->delete("/cluster/sdn/fabrics/node/test3/pve0"); + $conn->delete("/cluster/sdn/fabrics/node/test3/pve1"); + $conn->delete("/cluster/sdn/fabrics/node/test3/pve2"); $conn->delete("/cluster/sdn/fabrics/node/test2/pve0"); $conn->delete("/cluster/sdn/fabrics/node/test2/pve1"); $conn->delete("/cluster/sdn/fabrics/node/test2/pve2"); @@ -52,6 +64,8 @@ sub prepare_nodes { my $last_octet = $i + 1; my $ospf_iface = ($i * 2) + 19; my $openfabric_iface = ($i * 2) + 25; + my $isis_iface = ($i * 2) + 30; + my $ospf_node = { node_id => $node_name, @@ -71,9 +85,21 @@ sub prepare_nodes { ], protocol => "openfabric", }; + my $isis_node = { + node_id => $node_name, + ip => "192.0.15.$last_octet", + interfaces => [ + "name=ens$isis_iface", + "name=ens" . ($isis_iface + 1) + ], + protocol => "isis", + }; + $conn->post("/cluster/sdn/fabrics/node/test1/", $openfabric_node); $conn->post("/cluster/sdn/fabrics/node/test2/", $ospf_node); + $conn->post("/cluster/sdn/fabrics/node/test3/", $isis_node); + } } @@ -141,6 +167,18 @@ sub create_fabrics_ui_screenshots { $gui->element_screenshot("gui-datacenter-create-fabric-openfabric.png", $window); $gui->window_close($window); + $menu = $gui->find_button('Add Fabric', $panel)->click(); + $gui->find_menu_item('IS-IS')->click(); + + $window = $gui->find_dialog("Create: IS-IS"); + $gui->setValue($window, 'id', 'test3'); + $gui->setValue($window, 'ip_prefix', '192.0.2.0/24'); + $gui->setValue($window, 'hello_interval', '1'); + + $gui->element_screenshot("gui-datacenter-create-fabric-isis.png", $window); + $gui->window_close($window); + + $menu = $gui->find_button('Add Fabric', $panel)->click(); $gui->find_menu_item('OSPF')->click(); @@ -174,6 +212,15 @@ sub create_fabrics_ui_screenshots { $gui->element_screenshot("gui-datacenter-create-node-ospf.png", $window); $gui->window_close($window); + open_add_node_panel($gui, "isis"); + sleep_ms(500); + + $window = $gui->find_dialog("Create: Node"); + $gui->setValue($window, 'ip', '198.51.100.1'); + select_interfaces($gui, "ens19", "ens20"); + $gui->element_screenshot("gui-datacenter-create-node-isis.png", $window); + $gui->window_close($window); + # get fabric overview prepare_nodes($conn); sleep_ms(250); -- 2.47.3