[pve-devel] [PATCH pve-manager v4 10/17] fabric: add OpenFabric fabric edit panel
Gabriel Goller
g.goller at proxmox.com
Wed Jul 2 16:50:52 CEST 2025
From: Stefan Hanreich <s.hanreich at proxmox.com>
Add a component that extends the common FabricEdit component and adds
the OpenFabric-specific items to it. Those are currently the Hello
Interval and CSNP interval, which can be configured globally for all
members of the fabric.
Since OSPF currently does not provide IPv6 support (yet), we also move
the IPv6 prefix to the Openfabric edit panel, to avoid showing the
IPv6 prefix input field in the OSPF fabric edit panel.
As we enable IPv6 forwarding globally if a IPv6 fabric is created, show
a big warning when an address is entered. More info is available in the
docs.
Co-authored-by: Stefan Hanreich <s.hanreich at proxmox.com>
Signed-off-by: Gabriel Goller <g.goller at proxmox.com>
---
www/manager6/Makefile | 1 +
.../sdn/fabrics/openfabric/FabricEdit.js | 67 +++++++++++++++++++
2 files changed, 68 insertions(+)
create mode 100644 www/manager6/sdn/fabrics/openfabric/FabricEdit.js
diff --git a/www/manager6/Makefile b/www/manager6/Makefile
index 37d4bcc16d01..79a902d61bc4 100644
--- a/www/manager6/Makefile
+++ b/www/manager6/Makefile
@@ -313,6 +313,7 @@ JSSRC= \
sdn/fabrics/FabricEdit.js \
sdn/fabrics/openfabric/InterfacePanel.js \
sdn/fabrics/openfabric/NodeEdit.js \
+ sdn/fabrics/openfabric/FabricEdit.js \
sdn/fabrics/ospf/InterfacePanel.js \
sdn/fabrics/ospf/NodeEdit.js \
storage/ContentView.js \
diff --git a/www/manager6/sdn/fabrics/openfabric/FabricEdit.js b/www/manager6/sdn/fabrics/openfabric/FabricEdit.js
new file mode 100644
index 000000000000..be4e2fc39cd3
--- /dev/null
+++ b/www/manager6/sdn/fabrics/openfabric/FabricEdit.js
@@ -0,0 +1,67 @@
+Ext.define('PVE.sdn.Fabric.OpenFabric.Fabric.Edit', {
+ extend: 'PVE.sdn.Fabric.Fabric.Edit',
+
+ subject: 'OpenFabric',
+ onlineHelp: 'pvesdn_openfabric_fabric',
+
+ viewModel: {
+ data: {
+ showIpv6ForwardingHint: false,
+ },
+ },
+
+ extraRequestParams: {
+ protocol: 'openfabric',
+ },
+
+ additionalItems: [
+ {
+ xtype: 'displayfield',
+ value: 'This will enable IPv6 forwarding for all interfaces on every node. Click on the Help button for more details.',
+ bind: {
+ hidden: '{!showIpv6ForwardingHint}',
+ },
+ userCls: 'pmx-hint',
+ },
+ {
+ xtype: 'proxmoxtextfield',
+ fieldLabel: gettext('IPv6 Prefix'),
+ labelWidth: 120,
+ name: 'ip6_prefix',
+ allowBlank: true,
+ skipEmptyText: true,
+ cbind: {
+ disabled: '{!isCreate}',
+ deleteEmpty: '{!isCreate}',
+ },
+ listeners: {
+ change: function(textbox, value) {
+ let vm = textbox.up('window').getViewModel();
+ vm.set('showIpv6ForwardingHint', !!value);
+ },
+ },
+ },
+ {
+ xtype: 'proxmoxintegerfield',
+ fieldLabel: gettext('Hello Interval'),
+ labelWidth: 120,
+ name: 'hello_interval',
+ allowBlank: true,
+ skipEmptyText: true,
+ cbind: {
+ deleteEmpty: '{!isCreate}',
+ },
+ },
+ {
+ xtype: 'proxmoxintegerfield',
+ fieldLabel: gettext('CSNP Interval'),
+ labelWidth: 120,
+ name: 'csnp_interval',
+ allowBlank: true,
+ skipEmptyText: true,
+ cbind: {
+ deleteEmpty: '{!isCreate}',
+ },
+ },
+ ],
+});
--
2.39.5
More information about the pve-devel
mailing list