mirror of
				https://github.com/apache/cloudstack.git
				synced 2025-10-26 08:42:29 +01:00 
			
		
		
		
	Allow deletion of external managed cks nodes (#9183)
* Allow deleteion of external managed cks nodes * Fix unit tests * Update plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/KubernetesClusterHelperImpl.java Co-authored-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
This commit is contained in:
		
							parent
							
								
									f4612c51ec
								
							
						
					
					
						commit
						6a518e29b7
					
				| @ -84,6 +84,9 @@ public class KubernetesServiceHelperImpl extends AdapterBase implements Kubernet | |||||||
|         KubernetesCluster kubernetesCluster = kubernetesClusterDao.findById(vmMapVO.getClusterId()); |         KubernetesCluster kubernetesCluster = kubernetesClusterDao.findById(vmMapVO.getClusterId()); | ||||||
|         String msg = "Instance is a part of a Kubernetes cluster"; |         String msg = "Instance is a part of a Kubernetes cluster"; | ||||||
|         if (kubernetesCluster != null) { |         if (kubernetesCluster != null) { | ||||||
|  |             if (KubernetesCluster.ClusterType.ExternalManaged.equals(kubernetesCluster.getClusterType())) { | ||||||
|  |                 return; | ||||||
|  |             } | ||||||
|             msg += String.format(": %s", kubernetesCluster.getName()); |             msg += String.format(": %s", kubernetesCluster.getName()); | ||||||
|         } |         } | ||||||
|         msg += ". Use Instance delete option from Kubernetes cluster details or scale API for " + |         msg += ". Use Instance delete option from Kubernetes cluster details or scale API for " + | ||||||
|  | |||||||
| @ -58,14 +58,30 @@ public class KubernetesServiceHelperImplTest { | |||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     @Test(expected = CloudRuntimeException.class) |     @Test(expected = CloudRuntimeException.class) | ||||||
|     public void testCheckVmCanBeDestroyedInCluster() { |     public void testCheckVmCanBeDestroyedInCloudManagedCluster() { | ||||||
|         UserVm vm = Mockito.mock(UserVm.class); |         UserVm vm = Mockito.mock(UserVm.class); | ||||||
|         Mockito.when(vm.getId()).thenReturn(1L); |         Mockito.when(vm.getId()).thenReturn(1L); | ||||||
|         Mockito.when(vm.getUserVmType()).thenReturn(UserVmManager.CKS_NODE); |         Mockito.when(vm.getUserVmType()).thenReturn(UserVmManager.CKS_NODE); | ||||||
|         KubernetesClusterVmMapVO map = Mockito.mock(KubernetesClusterVmMapVO.class); |         KubernetesClusterVmMapVO map = Mockito.mock(KubernetesClusterVmMapVO.class); | ||||||
|         Mockito.when(map.getClusterId()).thenReturn(1L); |         Mockito.when(map.getClusterId()).thenReturn(1L); | ||||||
|         Mockito.when(kubernetesClusterVmMapDao.findByVmId(1L)).thenReturn(map); |         Mockito.when(kubernetesClusterVmMapDao.findByVmId(1L)).thenReturn(map); | ||||||
|         Mockito.when(kubernetesClusterDao.findById(1L)).thenReturn(Mockito.mock(KubernetesClusterVO.class)); |         KubernetesClusterVO kubernetesCluster = Mockito.mock(KubernetesClusterVO.class); | ||||||
|  |         Mockito.when(kubernetesClusterDao.findById(1L)).thenReturn(kubernetesCluster); | ||||||
|  |         Mockito.when(kubernetesCluster.getClusterType()).thenReturn(KubernetesCluster.ClusterType.CloudManaged); | ||||||
|  |         kubernetesServiceHelper.checkVmCanBeDestroyed(vm); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Test | ||||||
|  |     public void testCheckVmCanBeDestroyedInExternalManagedCluster() { | ||||||
|  |         UserVm vm = Mockito.mock(UserVm.class); | ||||||
|  |         Mockito.when(vm.getId()).thenReturn(1L); | ||||||
|  |         Mockito.when(vm.getUserVmType()).thenReturn(UserVmManager.CKS_NODE); | ||||||
|  |         KubernetesClusterVmMapVO map = Mockito.mock(KubernetesClusterVmMapVO.class); | ||||||
|  |         Mockito.when(map.getClusterId()).thenReturn(1L); | ||||||
|  |         Mockito.when(kubernetesClusterVmMapDao.findByVmId(1L)).thenReturn(map); | ||||||
|  |         KubernetesClusterVO kubernetesCluster = Mockito.mock(KubernetesClusterVO.class); | ||||||
|  |         Mockito.when(kubernetesClusterDao.findById(1L)).thenReturn(kubernetesCluster); | ||||||
|  |         Mockito.when(kubernetesCluster.getClusterType()).thenReturn(KubernetesCluster.ClusterType.ExternalManaged); | ||||||
|         kubernetesServiceHelper.checkVmCanBeDestroyed(vm); |         kubernetesServiceHelper.checkVmCanBeDestroyed(vm); | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user