Skip to content

Commit e7071ec

Browse files
authored
server: increment deviceid while importing vm data volumes (#6123)
Fixes #6121 deviceId for a volume/disk is never used by CloudStack VMware hypervisor plugin. Still it would be correct to increment value for each data volume/disk, behaviour similar to adding data volumes/disks. Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
1 parent c61ea9f commit e7071ec

1 file changed

Lines changed: 3 additions & 1 deletion

File tree

server/src/main/java/org/apache/cloudstack/vm/UnmanagedVMsManagerImpl.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1016,14 +1016,16 @@ private UserVm importVirtualMachineInternal(final UnmanagedInstanceTO unmanagedI
10161016
diskProfileStoragePoolList.add(importDisk(rootDisk, userVm, cluster, serviceOffering, Volume.Type.ROOT, String.format("ROOT-%d", userVm.getId()),
10171017
(rootDisk.getCapacity() / Resource.ResourceType.bytesToGiB), minIops, maxIops,
10181018
template, owner, null));
1019+
long deviceId = 1L;
10191020
for (UnmanagedInstanceTO.Disk disk : dataDisks) {
10201021
if (disk.getCapacity() == null || disk.getCapacity() == 0) {
10211022
throw new InvalidParameterValueException(String.format("Disk ID: %s size is invalid", rootDisk.getDiskId()));
10221023
}
10231024
DiskOffering offering = diskOfferingDao.findById(dataDiskOfferingMap.get(disk.getDiskId()));
10241025
diskProfileStoragePoolList.add(importDisk(disk, userVm, cluster, offering, Volume.Type.DATADISK, String.format("DATA-%d-%s", userVm.getId(), disk.getDiskId()),
10251026
(disk.getCapacity() / Resource.ResourceType.bytesToGiB), offering.getMinIops(), offering.getMaxIops(),
1026-
template, owner, null));
1027+
template, owner, deviceId));
1028+
deviceId++;
10271029
}
10281030
} catch (Exception e) {
10291031
LOGGER.error(String.format("Failed to import volumes while importing vm: %s", instanceName), e);

0 commit comments

Comments
 (0)