Enables the 'Essential' checkbox for the IsoSelector.

If the parameter `essential` is not set in the configuration,
it will be assumed to be true, to avoid breaking changes.

The box is checked by default for the same reason.

If unchecked, `essential=0` is written to the configuration and the VM
will attempt to start, even if the file or underlying storage is not
available (by temporarily setting the value to 'none,media=cdrom').

Signed-off-by: Daniel Herzig <d.her...@proxmox.com>
---
 www/manager6/qemu/CDEdit.js | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/www/manager6/qemu/CDEdit.js b/www/manager6/qemu/CDEdit.js
index 3cc16205..b115debc 100644
--- a/www/manager6/qemu/CDEdit.js
+++ b/www/manager6/qemu/CDEdit.js
@@ -12,6 +12,7 @@ Ext.define('PVE.qemu.CDInputPanel', {
        me.drive.media = 'cdrom';
        if (values.mediaType === 'iso') {
            me.drive.file = values.cdimage;
+           me.drive.essential = values.essential ? undefined : '0';
        } else if (values.mediaType === 'cdrom') {
            me.drive.file = 'cdrom';
        } else {
@@ -44,6 +45,11 @@ Ext.define('PVE.qemu.CDInputPanel', {
        } else {
            values.mediaType = 'iso';
            values.cdimage = drive.file;
+           if (drive.essential === '1' || drive.essential === undefined) {
+               values.essential = '1';
+           } else {
+               values.essential = '0';
+           }
        }
 
        me.drive = drive;
@@ -88,6 +94,7 @@ Ext.define('PVE.qemu.CDInputPanel', {
                        cdImageField.validate();
                    } else {
                        cdImageField.reset();
+                       delete me.drive.essential;
                    }
                },
            },
@@ -98,6 +105,7 @@ Ext.define('PVE.qemu.CDInputPanel', {
            nodename: me.nodename,
            insideWizard: me.insideWizard,
            name: 'cdimage',
+           showRequired: true,
        });
 
        items.push(me.isosel);
-- 
2.39.5


_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to