[pve-devel] [PATCH pve-manager] fix #5936: ui: backup: add CT PBS change detection mode selector

Shannon Sterz s.sterz at proxmox.com
Fri Nov 29 14:25:44 CET 2024


On Fri Nov 29, 2024 at 2:18 PM CET, Christian Ebner wrote:
> On 11/29/24 14:09, Shannon Sterz wrote:
> > On Fri Nov 29, 2024 at 1:40 PM CET, Christian Ebner wrote:
> >> Allow to select the change detection mode when performing manual
> >> backups of containers with Proxmox Backup Server as target, just like
> >> for the advanced backup job options introduced by commit 3b21f19f
> >> ("www: advanced backup: add pbs change detection mode selector").
> >>
> >> The selector is only shown in the backup window for containers and
> >> only enabled when a Proxmox Backup Server is selected as target
> >> storage.
> >>
> >> Link to issue in bugtracker:
> >> https://bugzilla.proxmox.com/show_bug.cgi?id=5936
> >>
> >> Signed-off-by: Christian Ebner <c.ebner at proxmox.com>
> >> ---
> >>   www/manager6/window/Backup.js | 32 ++++++++++++++++++++++++++++++--
> >>   1 file changed, 30 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/www/manager6/window/Backup.js b/www/manager6/window/Backup.js
> >> index 4418a9c7..82a2bd92 100644
> >> --- a/www/manager6/window/Backup.js
> >> +++ b/www/manager6/window/Backup.js
> >> @@ -53,6 +53,19 @@ Ext.define('PVE.window.Backup', {
> >>   	    },
> >>   	});
> >>
> >> +	let pbsChangeDetectionModeSelector = me.vmtype === 'lxc' ? Ext.create({
> >> +	    xtype: 'proxmoxKVComboBox',
> >> +	    fieldLabel: gettext('PBS change detection mode'),
> >> +	    name: 'pbs-change-detection-mode',
> >> +	    deleteEmpty: true,
> >> +	    value: '__default__',
> >> +	    comboItems: [
> >> +		['__default__', "Default"],
> >> +		['data', "Data"],
> >> +		['metadata', "Metadata"],
> >> +	    ],
> >> +	}) : null;
> >
> > nit: i think legibility of this would be improved by doing this instead:
> >
> > let pbsChangeDetectionModeSelector = null;
> > if (me.vmtype === 'lxc') {
> >      pbsChangeDetectionModeSelector = Ext.create({
> >          ...
> >      })
> > }
> >
> > it shouldn't be too much longer, but having a ternary operate span ten
> > lines of code is a bit much :)
>
> Okay, another option would be to show the selector unconditionally for
> both VMs and CTs, but only ever enable it for the CTs.
> That way one could also get rid of the `vmtype` check when disabling the
> selector below, and the window layout would remain the same for both
> types, making it less messy and error prone for future adaptions.
>
> Opinions on that?

i think that could be fine, as long as users have a way of knowing why
the option is disabled. since it is never there for VMs regardless of
the storage, it might be a little confusing. most other cases where we
disable stuff like this it purely comes down to the storage's support
for a feature afaict.

maybe add "(Container Only)" to the field label? not sure if that works
out layouting-wise though. "PBS change detection mode" is already pretty
long (in the backup job's advanced section there is an extra explainer
next to the field, which makes this clear).




More information about the pve-devel mailing list