You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by sh...@apache.org on 2024/01/09 12:08:17 UTC
(cloudstack) branch main updated: Fix KVM import unmanaged instance (#8433)
This is an automated email from the ASF dual-hosted git repository.
shwstppr pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cloudstack.git
The following commit(s) were added to refs/heads/main by this push:
new 9a915b11c42 Fix KVM import unmanaged instance (#8433)
9a915b11c42 is described below
commit 9a915b11c42bcc6f34b7d872f467daacb9a209f1
Author: Nicolas Vazquez <ni...@gmail.com>
AuthorDate: Tue Jan 9 09:08:11 2024 -0300
Fix KVM import unmanaged instance (#8433)
This PR fixes KVM manage/unmanage functionality on 4.19.0 RC1 - was introduced on #7976 but the latest merge commits on the PR removed the execution for KVM
---
.../apache/cloudstack/vm/UnmanagedVMsManagerImpl.java | 19 +++++++++----------
1 file changed, 9 insertions(+), 10 deletions(-)
diff --git a/server/src/main/java/org/apache/cloudstack/vm/UnmanagedVMsManagerImpl.java b/server/src/main/java/org/apache/cloudstack/vm/UnmanagedVMsManagerImpl.java
index 789e0bf06aa..ebd11f11957 100644
--- a/server/src/main/java/org/apache/cloudstack/vm/UnmanagedVMsManagerImpl.java
+++ b/server/src/main/java/org/apache/cloudstack/vm/UnmanagedVMsManagerImpl.java
@@ -1322,7 +1322,6 @@ public class UnmanagedVMsManagerImpl implements UnmanagedVMsManager {
ActionEventUtils.onStartedActionEvent(userId, owner.getId(), EventTypes.EVENT_VM_IMPORT,
cmd.getEventDescription(), null, null, true, 0);
- //TODO: Placeholder for integration with KVM ingestion and KVM extend unmanage/manage VMs
if (cmd instanceof ImportVmCmd) {
ImportVmCmd importVmCmd = (ImportVmCmd) cmd;
if (StringUtils.isBlank(importVmCmd.getImportSource())) {
@@ -1338,8 +1337,8 @@ public class UnmanagedVMsManagerImpl implements UnmanagedVMsManager {
details, importVmCmd, forced);
}
} else {
- if (cluster.getHypervisorType() == Hypervisor.HypervisorType.VMware) {
- userVm = importUnmanagedInstanceFromVmwareToVmware(zone, cluster, hosts, additionalNameFilters,
+ if (List.of(Hypervisor.HypervisorType.VMware, Hypervisor.HypervisorType.KVM).contains(cluster.getHypervisorType())) {
+ userVm = importUnmanagedInstanceFromHypervisor(zone, cluster, hosts, additionalNameFilters,
template, instanceName, displayName, hostName, caller, owner, userId,
serviceOffering, dataDiskOfferingMap,
nicNetworkMap, nicIpAddressMap,
@@ -1458,13 +1457,13 @@ public class UnmanagedVMsManagerImpl implements UnmanagedVMsManager {
}
}
- private UserVm importUnmanagedInstanceFromVmwareToVmware(DataCenter zone, Cluster cluster,
- List<HostVO> hosts, List<String> additionalNameFilters,
- VMTemplateVO template, String instanceName, String displayName,
- String hostName, Account caller, Account owner, long userId,
- ServiceOfferingVO serviceOffering, Map<String, Long> dataDiskOfferingMap,
- Map<String, Long> nicNetworkMap, Map<String, Network.IpAddresses> nicIpAddressMap,
- Map<String, String> details, Boolean migrateAllowed, List<String> managedVms, boolean forced) {
+ private UserVm importUnmanagedInstanceFromHypervisor(DataCenter zone, Cluster cluster,
+ List<HostVO> hosts, List<String> additionalNameFilters,
+ VMTemplateVO template, String instanceName, String displayName,
+ String hostName, Account caller, Account owner, long userId,
+ ServiceOfferingVO serviceOffering, Map<String, Long> dataDiskOfferingMap,
+ Map<String, Long> nicNetworkMap, Map<String, Network.IpAddresses> nicIpAddressMap,
+ Map<String, String> details, Boolean migrateAllowed, List<String> managedVms, boolean forced) {
UserVm userVm = null;
for (HostVO host : hosts) {
HashMap<String, UnmanagedInstanceTO> unmanagedInstances = getUnmanagedInstancesForHost(host, instanceName, managedVms);