* [PATCH pve-manager] fix #5001: ui: add context menu with bulk actions for pools in resource tree
@ 2026-10-30 10:06 Jonas Theisen
2026-10-30 10:06 ` [PATCH pve-manager] ui: tag menu: show cluster name instead of undefined in title Jonas Theisen
2026-11-03 13:37 ` [PATCH pve-manager] fix #5001: ui: add context menu with bulk actions for pools in resource tree Dominik Csapak
0 siblings, 2 replies; 7+ messages in thread
From: Jonas Theisen @ 2026-10-30 10:06 UTC (permalink / raw)
To: pve-devel
The pool view groups guests by their pool, but unlike the tag view it
offers no context menu on the pool tree-node itself. Add one with the
same guest bulk actions as the datacenter and tag menus.
The bulk action window opens with the pool filter pre-selected for the
pool the menu was opened on. Only guests that are direct members of
that pool are selected, guests in nested sub-pools are not, matching
how the pool filter works when set manually.
Fixes: https://bugzilla.proxmox.com/show_bug.cgi?id=5001
Signed-off-by: Jonas Theisen <j.theisen@proxmox.com>
---
www/manager6/Utils.js | 4 ++++
| 26 ++++++++++++++++++++++++++
www/manager6/window/BulkAction.js | 3 +++
3 files changed, 33 insertions(+)
diff --git a/www/manager6/Utils.js b/www/manager6/Utils.js
index 8b99371d..ced25763 100644
--- a/www/manager6/Utils.js
+++ b/www/manager6/Utils.js
@@ -1630,6 +1630,10 @@ Ext.define('PVE.Utils', {
menu = Ext.create('PVE.dc.TagCmdMenu', {
tag: record.data.tag,
});
+ } else if (type === 'pool') {
+ menu = Ext.create('PVE.dc.PoolCmdMenu', {
+ pool: record.data.pool,
+ });
} else if (record?.isRoot()) {
menu = Ext.create('PVE.dc.CmdMenu', {
pveSelNode: record,
--git a/www/manager6/dc/CmdMenu.js b/www/manager6/dc/CmdMenu.js
index 5bb4d7d1..f47132ee 100644
--- a/www/manager6/dc/CmdMenu.js
+++ b/www/manager6/dc/CmdMenu.js
@@ -127,3 +127,29 @@ Ext.define('PVE.dc.TagCmdMenu', {
me.callParent();
},
});
+
+Ext.define('PVE.dc.PoolCmdMenu', {
+ extend: 'PVE.dc.CmdMenu',
+ xtype: 'poolCmdMenu',
+
+ minWidth: 220,
+
+ initComponent: function () {
+ let me = this;
+
+ if (!me.pool) {
+ throw 'no pool specified';
+ }
+
+ me.title = `${gettext('Pool')} '${me.pool}'`;
+ if (PVE.ClusterName?.length) {
+ me.title += ` (${PVE.ClusterName})`;
+ }
+
+ me.extraHandlerArgs = {
+ prefilterPool: me.pool,
+ };
+
+ me.callParent();
+ },
+});
diff --git a/www/manager6/window/BulkAction.js b/www/manager6/window/BulkAction.js
index 2e3066a3..7e58fb3f 100644
--- a/www/manager6/window/BulkAction.js
+++ b/www/manager6/window/BulkAction.js
@@ -557,6 +557,9 @@ Ext.define('PVE.window.BulkAction', {
if (me.prefilterIncludeTag) {
me.down('#includetagfilter').setValue(me.prefilterIncludeTag);
}
+ if (me.prefilterPool) {
+ me.down('#poolfilter').setValue(me.prefilterPool);
+ }
form.on('validitychange', function () {
let valid = form.isValid();
--
2.47.3
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH pve-manager] ui: tag menu: show cluster name instead of undefined in title
2026-10-30 10:06 [PATCH pve-manager] fix #5001: ui: add context menu with bulk actions for pools in resource tree Jonas Theisen
@ 2026-10-30 10:06 ` Jonas Theisen
2026-11-03 13:38 ` Dominik Csapak
2026-11-03 13:37 ` [PATCH pve-manager] fix #5001: ui: add context menu with bulk actions for pools in resource tree Dominik Csapak
1 sibling, 1 reply; 7+ messages in thread
From: Jonas Theisen @ 2026-10-30 10:06 UTC (permalink / raw)
To: pve-devel
The tag context menu appends the node name to its title if a cluster
name is set, but no node name is ever passed to it, so clustered
setups show "(undefined)". Use the cluster name instead, like the
datacenter context menu does.
Signed-off-by: Jonas Theisen <j.theisen@proxmox.com>
---
| 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--git a/www/manager6/dc/CmdMenu.js b/www/manager6/dc/CmdMenu.js
index 87671adb..5bb4d7d1 100644
--- a/www/manager6/dc/CmdMenu.js
+++ b/www/manager6/dc/CmdMenu.js
@@ -117,7 +117,7 @@ Ext.define('PVE.dc.TagCmdMenu', {
me.title = `${gettext('Tag')} '${me.tag}'`;
if (PVE.ClusterName?.length) {
- me.title += ` (${me.nodename})`;
+ me.title += ` (${PVE.ClusterName})`;
}
me.extraHandlerArgs = {
--
2.47.3
^ permalink raw reply related [flat|nested] 7+ messages in thread* Re: [PATCH pve-manager] ui: tag menu: show cluster name instead of undefined in title
2026-10-30 10:06 ` [PATCH pve-manager] ui: tag menu: show cluster name instead of undefined in title Jonas Theisen
@ 2026-11-03 13:38 ` Dominik Csapak
0 siblings, 0 replies; 7+ messages in thread
From: Dominik Csapak @ 2026-11-03 13:38 UTC (permalink / raw)
To: Jonas Theisen, pve-devel
same comment regarding clustername as the other patch,
instead of fixing the clustername, we should simply remove that part here
on guests we also don't show neither the nodename nor the clustername
for example
On 10/30/26 11:07 AM, Jonas Theisen wrote:
> The tag context menu appends the node name to its title if a cluster
> name is set, but no node name is ever passed to it, so clustered
> setups show "(undefined)". Use the cluster name instead, like the
> datacenter context menu does.
>
> Signed-off-by: Jonas Theisen <j.theisen@proxmox.com>
> ---
> www/manager6/dc/CmdMenu.js | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/www/manager6/dc/CmdMenu.js b/www/manager6/dc/CmdMenu.js
> index 87671adb..5bb4d7d1 100644
> --- a/www/manager6/dc/CmdMenu.js
> +++ b/www/manager6/dc/CmdMenu.js
> @@ -117,7 +117,7 @@ Ext.define('PVE.dc.TagCmdMenu', {
>
> me.title = `${gettext('Tag')} '${me.tag}'`;
> if (PVE.ClusterName?.length) {
> - me.title += ` (${me.nodename})`;
> + me.title += ` (${PVE.ClusterName})`;
> }
>
> me.extraHandlerArgs = {
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH pve-manager] fix #5001: ui: add context menu with bulk actions for pools in resource tree
2026-10-30 10:06 [PATCH pve-manager] fix #5001: ui: add context menu with bulk actions for pools in resource tree Jonas Theisen
2026-10-30 10:06 ` [PATCH pve-manager] ui: tag menu: show cluster name instead of undefined in title Jonas Theisen
@ 2026-11-03 13:37 ` Dominik Csapak
2026-11-04 10:57 ` Jonas Theisen
2026-11-04 10:58 ` Jonas Theisen
1 sibling, 2 replies; 7+ messages in thread
From: Dominik Csapak @ 2026-11-03 13:37 UTC (permalink / raw)
To: Jonas Theisen, pve-devel
patch looks good to me, one high level thing and one
comment inline:
if you send multiple patches, please number them, so it's easier to
apply the whole thread, e.g. with `b4 shazam`
e.g. if you have both patches on the same branch,
`git send-email` or `git format-patch` should do this for you
On 10/30/26 11:07 AM, Jonas Theisen wrote:
> The pool view groups guests by their pool, but unlike the tag view it
> offers no context menu on the pool tree-node itself. Add one with the
> same guest bulk actions as the datacenter and tag menus.
>
> The bulk action window opens with the pool filter pre-selected for the
> pool the menu was opened on. Only guests that are direct members of
> that pool are selected, guests in nested sub-pools are not, matching
> how the pool filter works when set manually.
>
> Fixes: https://bugzilla.proxmox.com/show_bug.cgi?id=5001
> Signed-off-by: Jonas Theisen <j.theisen@proxmox.com>
> ---
> www/manager6/Utils.js | 4 ++++
> www/manager6/dc/CmdMenu.js | 26 ++++++++++++++++++++++++++
> www/manager6/window/BulkAction.js | 3 +++
> 3 files changed, 33 insertions(+)
>
> diff --git a/www/manager6/Utils.js b/www/manager6/Utils.js
> index 8b99371d..ced25763 100644
> --- a/www/manager6/Utils.js
> +++ b/www/manager6/Utils.js
> @@ -1630,6 +1630,10 @@ Ext.define('PVE.Utils', {
> menu = Ext.create('PVE.dc.TagCmdMenu', {
> tag: record.data.tag,
> });
> + } else if (type === 'pool') {
> + menu = Ext.create('PVE.dc.PoolCmdMenu', {
> + pool: record.data.pool,
> + });
> } else if (record?.isRoot()) {
> menu = Ext.create('PVE.dc.CmdMenu', {
> pveSelNode: record,
> diff --git a/www/manager6/dc/CmdMenu.js b/www/manager6/dc/CmdMenu.js
> index 5bb4d7d1..f47132ee 100644
> --- a/www/manager6/dc/CmdMenu.js
> +++ b/www/manager6/dc/CmdMenu.js
> @@ -127,3 +127,29 @@ Ext.define('PVE.dc.TagCmdMenu', {
> me.callParent();
> },
> });
> +
> +Ext.define('PVE.dc.PoolCmdMenu', {
> + extend: 'PVE.dc.CmdMenu',
> + xtype: 'poolCmdMenu',
> +
> + minWidth: 220,
> +
> + initComponent: function () {
> + let me = this;
> +
> + if (!me.pool) {
> + throw 'no pool specified';
> + }
> +
> + me.title = `${gettext('Pool')} '${me.pool}'`;
> + if (PVE.ClusterName?.length) {
> + me.title += ` (${PVE.ClusterName})`;
> + }
> +
i know this is copied from the other cmd menus here,
but does it really make sense?
for the datacenter it makes (kinda) sense but for a pool
not really
i'd just leave it out and use `Pool <name>` there
> + me.extraHandlerArgs = {
> + prefilterPool: me.pool,
> + };
> +
> + me.callParent();
> + },
> +});
> diff --git a/www/manager6/window/BulkAction.js b/www/manager6/window/BulkAction.js
> index 2e3066a3..7e58fb3f 100644
> --- a/www/manager6/window/BulkAction.js
> +++ b/www/manager6/window/BulkAction.js
> @@ -557,6 +557,9 @@ Ext.define('PVE.window.BulkAction', {
> if (me.prefilterIncludeTag) {
> me.down('#includetagfilter').setValue(me.prefilterIncludeTag);
> }
> + if (me.prefilterPool) {
> + me.down('#poolfilter').setValue(me.prefilterPool);
> + }
>
> form.on('validitychange', function () {
> let valid = form.isValid();
^ permalink raw reply [flat|nested] 7+ messages in thread* Re: [PATCH pve-manager] fix #5001: ui: add context menu with bulk actions for pools in resource tree
2026-11-03 13:37 ` [PATCH pve-manager] fix #5001: ui: add context menu with bulk actions for pools in resource tree Dominik Csapak
@ 2026-11-04 10:57 ` Jonas Theisen
2026-11-04 11:19 ` Dominik Csapak
2026-11-04 10:58 ` Jonas Theisen
1 sibling, 1 reply; 7+ messages in thread
From: Jonas Theisen @ 2026-11-04 10:57 UTC (permalink / raw)
To: Dominik Csapak, pve-devel
On 11/3/26 14:37, Dominik Csapak wrote:
> patch looks good to me, one high level thing and one
> comment inline:
>
> if you send multiple patches, please number them, so it's easier to
> apply the whole thread, e.g. with `b4 shazam`
>
> e.g. if you have both patches on the same branch,
>
> `git send-email` or `git format-patch` should do this for you
I intentionally did not do that since i thought the two patches
are only related by their targeted component but are not dependent
on each other in any way.
Will keep that in mind for v2.
>
>
>> <snip>
>> +
>> + me.title = `${gettext('Pool')} '${me.pool}'`;
>> + if (PVE.ClusterName?.length) {
>> + me.title += ` (${PVE.ClusterName})`;
>> + }
>> +
>
> i know this is copied from the other cmd menus here,
> but does it really make sense?
>
> for the datacenter it makes (kinda) sense but for a pool
> not really
>
> i'd just leave it out and use `Pool <name>` there
Agreed and also applied that to the Tag menu in v2 as mentioned.
>
>> + me.extraHandlerArgs = {
>> + prefilterPool: me.pool,
>> + };
>> +
>> + me.callParent();
>> + },
>> +});
>> diff --git a/www/manager6/window/BulkAction.js
>> b/www/manager6/window/BulkAction.js
>> index 2e3066a3..7e58fb3f 100644
>> --- a/www/manager6/window/BulkAction.js
>> +++ b/www/manager6/window/BulkAction.js
>> @@ -557,6 +557,9 @@ Ext.define('PVE.window.BulkAction', {
>> if (me.prefilterIncludeTag) {
>> me.down('#includetagfilter').setValue(me.prefilterIncludeTag);
>> }
>> + if (me.prefilterPool) {
>> + me.down('#poolfilter').setValue(me.prefilterPool);
>> + }
>> form.on('validitychange', function () {
>> let valid = form.isValid();
>
^ permalink raw reply [flat|nested] 7+ messages in thread* Re: [PATCH pve-manager] fix #5001: ui: add context menu with bulk actions for pools in resource tree
2026-11-04 10:57 ` Jonas Theisen
@ 2026-11-04 11:19 ` Dominik Csapak
0 siblings, 0 replies; 7+ messages in thread
From: Dominik Csapak @ 2026-11-04 11:19 UTC (permalink / raw)
To: Jonas Theisen, pve-devel
On 11/4/26 11:57 AM, Jonas Theisen wrote:
> On 11/3/26 14:37, Dominik Csapak wrote:
>> patch looks good to me, one high level thing and one
>> comment inline:
>>
>> if you send multiple patches, please number them, so it's easier to
>> apply the whole thread, e.g. with `b4 shazam`
>>
>> e.g. if you have both patches on the same branch,
>>
>> `git send-email` or `git format-patch` should do this for you
>
> I intentionally did not do that since i thought the two patches
> are only related by their targeted component but are not dependent
> on each other in any way.
> Will keep that in mind for v2.
that would also be ok, but then send them please as completely
independent patches, not within a single thread.
this makes it much clearer in most mail clients/tools that
they are separate
>>
>>
>>> <snip>
>>> +
>>> + me.title = `${gettext('Pool')} '${me.pool}'`;
>>> + if (PVE.ClusterName?.length) {
>>> + me.title += ` (${PVE.ClusterName})`;
>>> + }
>>> +
>>
>> i know this is copied from the other cmd menus here,
>> but does it really make sense?
>>
>> for the datacenter it makes (kinda) sense but for a pool
>> not really
>>
>> i'd just leave it out and use `Pool <name>` there
>
> Agreed and also applied that to the Tag menu in v2 as mentioned.
>>
>>> + me.extraHandlerArgs = {
>>> + prefilterPool: me.pool,
>>> + };
>>> +
>>> + me.callParent();
>>> + },
>>> +});
>>> diff --git a/www/manager6/window/BulkAction.js b/www/manager6/window/
>>> BulkAction.js
>>> index 2e3066a3..7e58fb3f 100644
>>> --- a/www/manager6/window/BulkAction.js
>>> +++ b/www/manager6/window/BulkAction.js
>>> @@ -557,6 +557,9 @@ Ext.define('PVE.window.BulkAction', {
>>> if (me.prefilterIncludeTag) {
>>> me.down('#includetagfilter').setValue(me.prefilterIncludeTag);
>>> }
>>> + if (me.prefilterPool) {
>>> + me.down('#poolfilter').setValue(me.prefilterPool);
>>> + }
>>> form.on('validitychange', function () {
>>> let valid = form.isValid();
>>
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH pve-manager] fix #5001: ui: add context menu with bulk actions for pools in resource tree
2026-11-03 13:37 ` [PATCH pve-manager] fix #5001: ui: add context menu with bulk actions for pools in resource tree Dominik Csapak
2026-11-04 10:57 ` Jonas Theisen
@ 2026-11-04 10:58 ` Jonas Theisen
1 sibling, 0 replies; 7+ messages in thread
From: Jonas Theisen @ 2026-11-04 10:58 UTC (permalink / raw)
To: pve-devel
Superseded by:
https://lore.proxmox.com/pve-devel/20261104105742.164370-1-j.theisen@proxmox.com/T/#t
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2026-11-04 11:19 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-30 10:06 [PATCH pve-manager] fix #5001: ui: add context menu with bulk actions for pools in resource tree Jonas Theisen
2026-10-30 10:06 ` [PATCH pve-manager] ui: tag menu: show cluster name instead of undefined in title Jonas Theisen
2026-11-03 13:38 ` Dominik Csapak
2026-11-03 13:37 ` [PATCH pve-manager] fix #5001: ui: add context menu with bulk actions for pools in resource tree Dominik Csapak
2026-11-04 10:57 ` Jonas Theisen
2026-11-04 11:19 ` Dominik Csapak
2026-11-04 10:58 ` Jonas Theisen
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.