[pve-devel] [PATCH manager v2] fix #5810: ui: show confirmation/warning dialog for sdn apply

Timothy Nicholson t.nicholson at proxmox.com
Mon Nov 4 13:24:57 CET 2024


This patch introduces a confirmation dialog for applying the SDN 
configuration. This is to warn the user that any pending network 
changes on the node level will also be applied.

Signed-off-by: Timothy Nicholson <t.nicholson at proxmox.com>
---
As stated in the Bugzilla entry [1], the main purpose of this
warning is to warn the user that any node network configuration 
changes will also be applied. A conditional warning that states 
whether any nodes have pending network changes (or even which nodes
have changes) would definitely be nice, however this information is
not readily available in the frontend, meaning there would need to 
be an API call for each node to find pending changes. I'll leave it 
open to discussion whether this would be worth it.
[1]: https://bugzilla.proxmox.com/show_bug.cgi?id=5810

changes since v1 [2]:
-  split into commit message and comment, thanks Lukas for the feedback.
[2]: https://lore.proxmox.com/pve-devel/20241030120205.85845-1-t.nicholson@proxmox.com/

 www/manager6/sdn/StatusView.js | 26 ++++++++++++++++++--------
 1 file changed, 18 insertions(+), 8 deletions(-)

diff --git a/www/manager6/sdn/StatusView.js b/www/manager6/sdn/StatusView.js
index 970aa919..46ebe69a 100644
--- a/www/manager6/sdn/StatusView.js
+++ b/www/manager6/sdn/StatusView.js
@@ -41,14 +41,24 @@ Ext.define('PVE.sdn.StatusView', {
 		{
 		    text: gettext('Apply'),
 		    handler: function() {
-			Proxmox.Utils.API2Request({
-			    url: '/cluster/sdn/',
-			    method: 'PUT',
-			    waitMsgTarget: me,
-			    failure: function(response, opts) {
-				Ext.Msg.alert(gettext('Error'), response.htmlStatus);
-			    },
-			});
+			Ext.Msg.show({
+			    title: gettext('Confirm'),
+			    icon: Ext.Msg.WARNING,
+			    msg: gettext('Any pending node network changes will also be applied. Proceed?'),
+			    buttons: Ext.Msg.YESNO,
+			    callback: function(btn) {
+				if (btn === 'yes') {
+				    Proxmox.Utils.API2Request({
+					url: '/cluster/sdn/',
+					method: 'PUT',
+					waitMsgTarget: me,
+					failure: function(response, opts) {
+					    Ext.Msg.alert(gettext('Error'), response.htmlStatus);
+					},
+				    });
+				}
+			    }
+			})
 		    },
 		},
 	    ],
-- 
2.39.5




More information about the pve-devel mailing list