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

dahn pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cloudstack.git


The following commit(s) were added to refs/heads/master by this push:
     new 2627258  Adding public ip to listKubernetesClusterResponse (#4414)
2627258 is described below

commit 26272580f326564c18d9d207fd779d756f1f9163
Author: davidjumani <[email protected]>
AuthorDate: Wed Oct 28 14:17:37 2020 +0530

    Adding public ip to listKubernetesClusterResponse (#4414)
---
 .../kubernetes/cluster/KubernetesClusterManagerImpl.java | 11 +++++++++++
 .../api/response/KubernetesClusterResponse.java          | 16 ++++++++++++++++
 2 files changed, 27 insertions(+)

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 e46435b..8b8be1c 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
@@ -109,6 +109,8 @@ import com.cloud.network.NetworkService;
 import com.cloud.network.Networks;
 import com.cloud.network.PhysicalNetwork;
 import com.cloud.network.dao.FirewallRulesDao;
+import com.cloud.network.dao.IPAddressDao;
+import com.cloud.network.dao.IPAddressVO;
 import com.cloud.network.dao.NetworkDao;
 import com.cloud.network.dao.NetworkVO;
 import com.cloud.network.dao.PhysicalNetworkDao;
@@ -216,6 +218,8 @@ public class KubernetesClusterManagerImpl extends 
ManagerBase implements Kuberne
     @Inject
     protected NetworkDao networkDao;
     @Inject
+    protected IPAddressDao ipAddressDao;
+    @Inject
     protected CapacityManager capacityManager;
     @Inject
     protected ResourceManager resourceManager;
@@ -610,6 +614,13 @@ public class KubernetesClusterManagerImpl extends 
ManagerBase implements Kuberne
         response.setEndpoint(kubernetesCluster.getEndpoint());
         response.setNetworkId(ntwk.getUuid());
         response.setAssociatedNetworkName(ntwk.getName());
+        if (ntwk.getGuestType() == Network.GuestType.Isolated) {
+            List<IPAddressVO> ipAddresses = 
ipAddressDao.listByAssociatedNetwork(ntwk.getId(), true);
+            if (ipAddresses != null && ipAddresses.size() == 1) {
+                response.setIpAddress(ipAddresses.get(0).getAddress().addr());
+                response.setIpAddressId(ipAddresses.get(0).getUuid());
+            }
+        }
         List<UserVmResponse> vmResponses = new ArrayList<UserVmResponse>();
         List<KubernetesClusterVmMapVO> vmList = 
kubernetesClusterVmMapDao.listByClusterId(kubernetesCluster.getId());
         ResponseView respView = ResponseView.Restricted;
diff --git 
a/plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/response/KubernetesClusterResponse.java
 
b/plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/response/KubernetesClusterResponse.java
index d5e9793..bb3f14f 100644
--- 
a/plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/response/KubernetesClusterResponse.java
+++ 
b/plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/response/KubernetesClusterResponse.java
@@ -133,6 +133,14 @@ public class KubernetesClusterResponse extends 
BaseResponse implements Controlle
     @Param(description = "the list of virtualmachine associated with this 
Kubernetes cluster")
     private List<UserVmResponse> virtualMachines;
 
+    @SerializedName(ApiConstants.IP_ADDRESS)
+    @Param(description = "Public IP Address of the cluster")
+    private String ipAddress;
+
+    @SerializedName(ApiConstants.IP_ADDRESS_ID)
+    @Param(description = "Public IP Address ID of the cluster")
+    private String ipAddressId;
+
     public KubernetesClusterResponse() {
     }
 
@@ -324,4 +332,12 @@ public class KubernetesClusterResponse extends 
BaseResponse implements Controlle
     public List<UserVmResponse> getVirtualMachines() {
         return virtualMachines;
     }
+
+    public void setIpAddress(String ipAddress) {
+        this.ipAddress = ipAddress;
+    }
+
+    public void setIpAddressId(String ipAddressId) {
+        this.ipAddressId = ipAddressId;
+    }
 }

Reply via email to