From: Hannes Laimer <h.laimer@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: [PATCH pve-manager v6 12/13] ui: sdn: ipam: add the zone namespace options
Date: Thu, 5 Nov 2026 10:35:28 +0100 [thread overview]
Message-ID: <20261105093529.209052-13-h.laimer@proxmox.com> (raw)
In-Reply-To: <20261105093529.209052-1-h.laimer@proxmox.com>
The NetBox and phpIPAM dialogs show both options in an advanced
section. The namespace per zone is off by default, and the namespace
prefix is pve when left empty.
Signed-off-by: Hannes Laimer <h.laimer@proxmox.com>
---
www/manager6/sdn/ipams/Base.js | 37 +++++++++++++++++++++++++++
www/manager6/sdn/ipams/NetboxEdit.js | 4 +++
www/manager6/sdn/ipams/PhpIpamEdit.js | 4 +++
3 files changed, 45 insertions(+)
diff --git a/www/manager6/sdn/ipams/Base.js b/www/manager6/sdn/ipams/Base.js
index 1f6eab296c20..4d37f93d504c 100644
--- a/www/manager6/sdn/ipams/Base.js
+++ b/www/manager6/sdn/ipams/Base.js
@@ -3,6 +3,12 @@ Ext.define('PVE.panel.SDNIpamBase', {
type: '',
+ viewModel: {
+ data: {
+ zoneNamespaces: false,
+ },
+ },
+
onGetValues: function (values) {
var me = this;
@@ -15,6 +21,37 @@ Ext.define('PVE.panel.SDNIpamBase', {
return values;
},
+ // the external IPAMs keep each zone's subnets in a namespace of their
+ // own once the option is on, named with the prefix
+ zoneNamespaceFields: function () {
+ let me = this;
+
+ return [
+ {
+ xtype: 'proxmoxcheckbox',
+ name: 'zone-namespaces',
+ fieldLabel: gettext('Namespace per Zone'),
+ uncheckedValue: null,
+ checked: false,
+ deleteEmpty: !me.isCreate,
+ bind: {
+ value: '{zoneNamespaces}',
+ },
+ },
+ {
+ xtype: 'proxmoxtextfield',
+ name: 'zone-namespace-prefix',
+ fieldLabel: gettext('Namespace Prefix'),
+ emptyText: 'pve',
+ skipEmptyText: true,
+ deleteEmpty: !me.isCreate,
+ bind: {
+ disabled: '{!zoneNamespaces}',
+ },
+ },
+ ];
+ },
+
initComponent: function () {
var me = this;
diff --git a/www/manager6/sdn/ipams/NetboxEdit.js b/www/manager6/sdn/ipams/NetboxEdit.js
index 17971026c93e..51e7b834f7a7 100644
--- a/www/manager6/sdn/ipams/NetboxEdit.js
+++ b/www/manager6/sdn/ipams/NetboxEdit.js
@@ -53,6 +53,10 @@ Ext.define('PVE.sdn.ipams.NetboxInputPanel', {
},
];
+ let [namespaces, prefix] = me.zoneNamespaceFields();
+ me.advancedColumn1 = [namespaces];
+ me.advancedColumn2 = [prefix];
+
me.callParent();
},
});
diff --git a/www/manager6/sdn/ipams/PhpIpamEdit.js b/www/manager6/sdn/ipams/PhpIpamEdit.js
index b28232ab67b7..3824fd734487 100644
--- a/www/manager6/sdn/ipams/PhpIpamEdit.js
+++ b/www/manager6/sdn/ipams/PhpIpamEdit.js
@@ -58,6 +58,10 @@ Ext.define('PVE.sdn.ipams.PhpIpamInputPanel', {
},
];
+ let [namespaces, prefix] = me.zoneNamespaceFields();
+ me.advancedColumn1 = [namespaces];
+ me.advancedColumn2 = [prefix];
+
me.callParent();
},
});
--
2.47.3
next prev parent reply other threads:[~2026-11-05 9:36 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-05 9:35 [PATCH docs/manager/network/qemu-server v6 00/13] sdn: improve MAC cache, DHCP reservations and scope both to the vnet Hannes Laimer
2026-11-05 9:35 ` [PATCH pve-network v6 01/13] sdn: ipam: stop caching IPAM misses Hannes Laimer
2026-11-05 9:35 ` [PATCH pve-network v6 02/13] sdn: ipam: cache a MAC lookup's answer under the cluster lock Hannes Laimer
2026-11-05 9:35 ` [PATCH pve-network v6 03/13] sdn: ipam: read the MAC cache case-insensitively Hannes Laimer
2026-11-05 9:35 ` [PATCH pve-network v6 04/13] sdn: dhcp: replace a stale dnsmasq reservation instead of dropping it Hannes Laimer
2026-11-05 9:35 ` [PATCH pve-network v6 05/13] sdn: ipam: release an address the built-in IPAM no longer holds Hannes Laimer
2026-11-05 9:35 ` [PATCH pve-network v6 06/13] sdn: dhcp: update reservations when IP mappings change Hannes Laimer
2026-11-05 9:35 ` [PATCH pve-network v6 07/13] sdn: ipam: look a MAC up within the vnet's subnets Hannes Laimer
2026-11-05 9:35 ` [PATCH pve-network v6 08/13] sdn: ipam: keep the MAC cache per vnet Hannes Laimer
2026-11-05 9:35 ` [PATCH pve-network v6 09/13] sdn: ipam: give each zone a VRF in NetBox and a section in phpIPAM Hannes Laimer
2026-11-05 9:35 ` [PATCH qemu-server v6 10/13] network: sdn: push the DHCP mappings of a guest when it resumes Hannes Laimer
2026-11-05 9:35 ` [PATCH pve-manager v6 11/13] ui: sdn: dhcp tree: do not merge the same subnet in different zones Hannes Laimer
2026-11-05 9:35 ` Hannes Laimer [this message]
2026-11-05 9:35 ` [PATCH pve-docs v6 13/13] sdn: ipam: document zone namespaces and the mapping edit Hannes Laimer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20261105093529.209052-13-h.laimer@proxmox.com \
--to=h.laimer@proxmox.com \
--cc=pve-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox