This is an automated email from the ASF dual-hosted git repository.

nvazquez 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 5fdd4d211d cks: Get caller user keys if cluster belongs to project 
(#6392)
5fdd4d211d is described below

commit 5fdd4d211dc3504a751860218ac698c9519850ef
Author: David Jumani <[email protected]>
AuthorDate: Wed May 18 19:10:13 2022 +0530

    cks: Get caller user keys if cluster belongs to project (#6392)
    
    * cks: Get caller user keys if cluster belongs to project
    
    * Refactor
---
 .../kubernetes/cluster/KubernetesClusterManagerImpl.java   | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

diff --git 
a/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/KubernetesClusterManagerImpl.java
 
b/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/KubernetesClusterManagerImpl.java
index 5353755029..894ea4c493 100644
--- 
a/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/KubernetesClusterManagerImpl.java
+++ 
b/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/KubernetesClusterManagerImpl.java
@@ -1137,8 +1137,7 @@ public class KubernetesClusterManagerImpl extends 
ManagerBase implements Kuberne
         startWorker = ComponentContext.inject(startWorker);
         if (onCreate) {
             // Start for Kubernetes cluster in 'Created' state
-            Account owner = 
accountService.getActiveAccountById(kubernetesCluster.getAccountId());
-            String[] keys = getServiceUserKeys(owner);
+            String[] keys = getServiceUserKeys(kubernetesCluster);
             startWorker.setKeys(keys);
             return startWorker.startKubernetesClusterOnCreate();
         } else {
@@ -1147,8 +1146,9 @@ public class KubernetesClusterManagerImpl extends 
ManagerBase implements Kuberne
         }
     }
 
-    private String[] getServiceUserKeys(Account owner) {
-        if (owner == null) {
+    private String[] getServiceUserKeys(KubernetesClusterVO kubernetesCluster) 
{
+        Account owner = 
accountService.getActiveAccountById(kubernetesCluster.getAccountId());
+        if (owner == null || owner.getType() == Account.Type.PROJECT) {
             owner = CallContext.current().getCallingAccount();
         }
         String username = owner.getAccountName() + "-" + 
KUBEADMIN_ACCOUNT_NAME;
@@ -1299,8 +1299,7 @@ public class KubernetesClusterManagerImpl extends 
ManagerBase implements Kuberne
         validateKubernetesClusterScaleParameters(cmd);
 
         KubernetesClusterVO kubernetesCluster = 
kubernetesClusterDao.findById(cmd.getId());
-        Account owner = 
accountService.getActiveAccountById(kubernetesCluster.getAccountId());
-        String[] keys = getServiceUserKeys(owner);
+        String[] keys = getServiceUserKeys(kubernetesCluster);
         KubernetesClusterScaleWorker scaleWorker =
             new 
KubernetesClusterScaleWorker(kubernetesClusterDao.findById(cmd.getId()),
                 serviceOfferingDao.findById(cmd.getServiceOfferingId()),
@@ -1323,8 +1322,7 @@ public class KubernetesClusterManagerImpl extends 
ManagerBase implements Kuberne
 
         validateKubernetesClusterUpgradeParameters(cmd);
         KubernetesClusterVO kubernetesCluster = 
kubernetesClusterDao.findById(cmd.getId());
-        Account owner = 
accountService.getActiveAccountById(kubernetesCluster.getAccountId());
-        String[] keys = getServiceUserKeys(owner);
+        String[] keys = getServiceUserKeys(kubernetesCluster);
         KubernetesClusterUpgradeWorker upgradeWorker =
             new 
KubernetesClusterUpgradeWorker(kubernetesClusterDao.findById(cmd.getId()),
                 
kubernetesSupportedVersionDao.findById(cmd.getKubernetesVersionId()), this, 
keys);

Reply via email to