[pve-devel] [PATCH manager] ui: qemu: add wwid text field

Maximiliano Sandoval m.sandoval at proxmox.com
Fri Dec 15 14:55:42 CET 2023


This is useful to test multipath devices which need a wwid.

We use 'e.g.' rather than 'Example', otherwise the 18 characters of the
example do not fit in the field.

Suggested-by: Friedrich Weber <f.weber at proxmox.com>
Signed-off-by: Maximiliano Sandoval <m.sandoval at proxmox.com>
---
 www/manager6/qemu/HDEdit.js | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/www/manager6/qemu/HDEdit.js b/www/manager6/qemu/HDEdit.js
index b78647ec..bc60a21c 100644
--- a/www/manager6/qemu/HDEdit.js
+++ b/www/manager6/qemu/HDEdit.js
@@ -91,6 +91,7 @@ Ext.define('PVE.qemu.HDInputPanel', {
 	PVE.Utils.propertyStringSet(me.drive, values.readOnly, 'ro', 'on');
 	PVE.Utils.propertyStringSet(me.drive, values.cache, 'cache');
 	PVE.Utils.propertyStringSet(me.drive, values.aio, 'aio');
+	PVE.Utils.propertyStringSet(me.drive, values.wwn, 'wwn', values.wwn);
 
 	['mbps_rd', 'mbps_wr', 'iops_rd', 'iops_wr'].forEach(name => {
 	    let burst_name = `${name}_max`;
@@ -151,6 +152,7 @@ Ext.define('PVE.qemu.HDInputPanel', {
 	values.iothread = PVE.Parser.parseBoolean(drive.iothread);
 	values.readOnly = PVE.Parser.parseBoolean(drive.ro);
 	values.aio = drive.aio || '__default__';
+	values.wwn = drive.wwn;
 
 	values.mbps_rd = drive.mbps_rd;
 	values.mbps_wr = drive.mbps_wr;
@@ -285,6 +287,22 @@ Ext.define('PVE.qemu.HDInputPanel', {
 		    disabled: '{!isVirtIO && !isSCSI}',
 		},
 	    },
+	    {
+		xtype: 'proxmoxtextfield',
+		name: 'wwn',
+		fieldLabel: 'WWID',
+		emptyText: gettext('e.g.') + ': 0x5566777799999999',
+		value: '',
+		skipEmptyText: true,
+		deleteEmpty: true,
+		submitEmptyText: false,
+		validator: function(v) {
+		    if (!v || (/^0x[0-9a-fA-F]{16}$/).test(v)) {
+			return true;
+		    }
+		    return gettext('Invalid Value');
+		},
+	    },
 	);
 
 	advancedColumn2.push(
-- 
2.39.2





More information about the pve-devel mailing list