[pve-devel] [PATCH manager 5/5] fix #5430: ui: vm: allow editing cloudinit aio and cache options

Daniel Kral d.kral at proxmox.com
Wed Oct 16 18:47:11 CEST 2024


Adds cache and async I/O selectors to the CloudInit Drive Edit modal
window in the "Hardware" tab. This allows users to set these options in
the WebGUI when the VM fails to start because the underlying storage
(driver) does not support a specific set of configurations.

Signed-off-by: Daniel Kral <d.kral at proxmox.com>
---
 www/manager6/qemu/CIDriveEdit.js | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/www/manager6/qemu/CIDriveEdit.js b/www/manager6/qemu/CIDriveEdit.js
index 0494f9c5..2508cd8e 100644
--- a/www/manager6/qemu/CIDriveEdit.js
+++ b/www/manager6/qemu/CIDriveEdit.js
@@ -18,6 +18,9 @@ Ext.define('PVE.qemu.CIDriveInputPanel', {
 	    me.drive.format = values.diskformat;
 	}
 
+	PVE.Utils.propertyStringSet(me.drive, values.cache, 'cache');
+	PVE.Utils.propertyStringSet(me.drive, values.aio, 'aio');
+
 	params[confid] = PVE.Parser.printQemuDrive(me.drive);
 
 	return params;
@@ -50,6 +53,9 @@ Ext.define('PVE.qemu.CIDriveInputPanel', {
 	}
 	values.hdimage = drive.file;
 
+	values.cache = drive.cache || '__default__';
+	values.aio = drive.aio || '__default__';
+
 	me.drive = drive;
 
 	me.setValues(values);
@@ -84,6 +90,22 @@ Ext.define('PVE.qemu.CIDriveInputPanel', {
 
 	me.items = items;
 
+	me.advancedColumnB = [
+	    {
+		xtype: 'CacheTypeSelector',
+		name: 'cache',
+		value: '__default__',
+		fieldLabel: gettext('Cache'),
+	    },
+	    {
+		xtype: 'AsyncIOTypeSelector',
+		name: 'aio',
+		value: '__default__',
+		fieldLabel: gettext('Async IO'),
+		allowBlank: false,
+	    },
+	];
+
 	me.callParent();
     },
 });
-- 
2.39.5





More information about the pve-devel mailing list