From b29950f99cbcaf40919654fee8f6a58201a33574 Mon Sep 17 00:00:00 2001 From: Andy Lee Date: Thu, 11 Dec 2025 16:12:39 +0800 Subject: [PATCH] fix: failed to create multiple VMs (#647) Signed-off-by: Andy Lee --- pkg/harvester/mixins/harvester-vm/index.js | 24 +++++++++------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/pkg/harvester/mixins/harvester-vm/index.js b/pkg/harvester/mixins/harvester-vm/index.js index 9c81e5e7..acae0b20 100644 --- a/pkg/harvester/mixins/harvester-vm/index.js +++ b/pkg/harvester/mixins/harvester-vm/index.js @@ -709,7 +709,8 @@ export default { const volumeClaimTemplates = []; disk.forEach( (R, index) => { - const dataVolumeName = this.parseDataVolumeName(R); + const prefixName = this.value.metadata?.name || ''; + const dataVolumeName = this.parseDataVolumeName(R, prefixName); const _disk = this.parseDisk(R, index); const _volume = this.parseVolume(R, dataVolumeName); @@ -1004,23 +1005,18 @@ export default { this['cpuMemoryHotplugEnabled'] = cpuMemoryHotplugEnabled; }, - parseDataVolumeName(R) { - const prefixName = this.value.metadata?.name || ''; + parseDataVolumeName(R, prefixName) { let dataVolumeName = ''; - if (!R.dataVolumeName) { - if (R.source === SOURCE_TYPE.ATTACH_VOLUME) { - dataVolumeName = R.volumeName; - } else if (this.isClone || !this.hasCreateVolumes.includes(R.realName)) { - dataVolumeName = `${ prefixName }-${ R.name }-${ randomStr(5).toLowerCase() }`; - } else { - dataVolumeName = R.realName; - } - - R.dataVolumeName = dataVolumeName; + if (R.source === SOURCE_TYPE.ATTACH_VOLUME) { + dataVolumeName = R.volumeName; + } else if (this.isClone || !this.hasCreateVolumes.includes(R.realName)) { + dataVolumeName = `${ prefixName }-${ R.name }-${ randomStr(5).toLowerCase() }`; + } else { + dataVolumeName = R.realName; } - return R.dataVolumeName; + return dataVolumeName; }, parseDisk(R, index) {