You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by ra...@apache.org on 2015/09/20 08:31:27 UTC
[03/17] stratos git commit: Set labels for identification when
creating K8s pods and services
Set labels for identification when creating K8s pods and services
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/5a9537d0
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/5a9537d0
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/5a9537d0
Branch: refs/heads/stratos-4.1.x
Commit: 5a9537d09a0e7a745e2ab8b7eac51027e59688ef
Parents: 7d6279d
Author: Akila Perera <ra...@gmail.com>
Authored: Sat Sep 19 19:58:57 2015 +0530
Committer: Akila Perera <ra...@gmail.com>
Committed: Sun Sep 20 00:19:40 2015 +0530
----------------------------------------------------------------------
.../org.apache.stratos.cloud.controller/pom.xml | 7 +-
.../cloud/controller/domain/MemberContext.java | 12 ++--
.../iaases/kubernetes/KubernetesIaas.java | 24 +++++++
.../kubernetes/client/KubernetesApiClient.java | 69 ++++++++++----------
.../KubernetesAPIClientInterface.java | 16 +++--
.../client/live/AbstractLiveTest.java | 22 ++++---
.../live/KubernetesApiClientLiveTest.java | 26 ++++++--
7 files changed, 113 insertions(+), 63 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/5a9537d0/components/org.apache.stratos.cloud.controller/pom.xml
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.cloud.controller/pom.xml b/components/org.apache.stratos.cloud.controller/pom.xml
index 2f3c841..b771e1a 100644
--- a/components/org.apache.stratos.cloud.controller/pom.xml
+++ b/components/org.apache.stratos.cloud.controller/pom.xml
@@ -54,11 +54,10 @@
</Private-Package>
<Import-Package>
!org.apache.stratos.cloud.controller.*,
- org.apache.commons.logging,
- org.apache.commons.io.*,
+ org.apache.commons.*,
org.wso2.carbon.utils.*,
- org.apache.stratos.kubernetes.client; version="${project.version}",
- org.apache.stratos.kubernetes.client.exceptions; version="${project.version}",
+ org.apache.stratos.common.*; version="${project.version}",
+ org.apache.stratos.kubernetes.client.*; version="${project.version}",
org.jclouds.aws.ec2.*; version=${jclouds.version},
org.jclouds.ec2.*; version=${jclouds.version},
org.jclouds.compute.*; version=${jclouds.version},
http://git-wip-us.apache.org/repos/asf/stratos/blob/5a9537d0/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/domain/MemberContext.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/domain/MemberContext.java b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/domain/MemberContext.java
index ebe2940..c0e50bd 100644
--- a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/domain/MemberContext.java
+++ b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/domain/MemberContext.java
@@ -73,7 +73,7 @@ public class MemberContext implements Serializable {
private Properties properties;
private NameValuePair[] dynamicPayload;
private String kubernetesPodId;
- private String kubernetesPodLabel;
+ private String kubernetesPodName;
private LoadBalancingIPType loadBalancingIPType;
public MemberContext(String applicationId, String cartridgeType, String clusterId, String memberId) {
@@ -271,12 +271,12 @@ public class MemberContext implements Serializable {
return kubernetesPodId;
}
- public void setKubernetesPodLabel(String kubernetesPodLabel) {
- this.kubernetesPodLabel = kubernetesPodLabel;
+ public void setKubernetesPodName(String kubernetesPodLabel) {
+ this.kubernetesPodName = kubernetesPodLabel;
}
- public String getKubernetesPodLabel() {
- return kubernetesPodLabel;
+ public String getKubernetesPodName() {
+ return kubernetesPodName;
}
public LoadBalancingIPType getLoadBalancingIPType() {
@@ -305,7 +305,7 @@ public class MemberContext implements Serializable {
+ ", lbClusterId=" + lbClusterId
+ ", networkPartitionId=" + networkPartitionId
+ ", kubernetesPodId=" + kubernetesPodId
- + ", kubernetesPodLabel=" + kubernetesPodLabel
+ + ", kubernetesPodName=" + kubernetesPodName
+ ", loadBalancingIPType=" + loadBalancingIPType
+ ", instanceMetadata=" + instanceMetadata
+ ", properties=" + properties + "]";
http://git-wip-us.apache.org/repos/asf/stratos/blob/5a9537d0/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/iaases/kubernetes/KubernetesIaas.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/iaases/kubernetes/KubernetesIaas.java b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/iaases/kubernetes/KubernetesIaas.java
index 5867184..fbb4c7c 100644
--- a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/iaases/kubernetes/KubernetesIaas.java
+++ b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/iaases/kubernetes/KubernetesIaas.java
@@ -977,6 +977,7 @@ public class KubernetesIaas extends Iaas {
for (KubernetesService kubernetesService : kubernetesServices) {
KubernetesClusterContext kubernetesClusterContext =
+<<<<<<< HEAD
CloudControllerContext.getInstance().getKubernetesClusterContext(kubernetesService.getKubernetesClusterId());
KubernetesApiClient kubernetesApiClient = kubernetesClusterContext.getKubApi();
String serviceId = kubernetesService.getId();
@@ -991,6 +992,29 @@ public class KubernetesIaas extends Iaas {
} catch (KubernetesClientException e) {
log.error(String.format("Could not delete kubernetes service: [application-id] %s " +
"[service-id] %s", clusterContext.getApplicationId(), serviceId));
+=======
+ CloudControllerContext.getInstance().getKubernetesClusterContext(kubernetesClusterId);
+
+ if (kubernetesClusterContext != null) {
+ KubernetesApiClient kubernetesApiClient = kubernetesClusterContext.getKubApi();
+ ArrayList<KubernetesService> kubernetesServices = Lists.newArrayList(clusterContext.getKubernetesServices());
+
+ for (KubernetesService kubernetesService : kubernetesServices) {
+ String serviceId = kubernetesService.getId();
+ log.info(String.format("Deleting kubernetes service: [application-id] %s " +
+ "[service-id] %s", applicationId, serviceId));
+
+ try {
+ kubernetesApiClient.deleteService(serviceId);
+ kubernetesClusterContext.deallocatePort(kubernetesService.getPort());
+ kubernetesClusterContext.removeKubernetesService(serviceId);
+ clusterContext.removeKubernetesService(serviceId);
+ } catch (KubernetesClientException e) {
+ log.error(String.format("Could not delete kubernetes service: [application-id] %s " +
+ "[service-id] %s", applicationId, serviceId));
+ }
+ }
+>>>>>>> Set labels for identification when creating K8s pods and services
}
}
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/5a9537d0/components/org.apache.stratos.kubernetes.client/src/main/java/org/apache/stratos/kubernetes/client/KubernetesApiClient.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.kubernetes.client/src/main/java/org/apache/stratos/kubernetes/client/KubernetesApiClient.java b/components/org.apache.stratos.kubernetes.client/src/main/java/org/apache/stratos/kubernetes/client/KubernetesApiClient.java
index 7dffd60..5d0aff1 100644
--- a/components/org.apache.stratos.kubernetes.client/src/main/java/org/apache/stratos/kubernetes/client/KubernetesApiClient.java
+++ b/components/org.apache.stratos.kubernetes.client/src/main/java/org/apache/stratos/kubernetes/client/KubernetesApiClient.java
@@ -46,7 +46,8 @@ public class KubernetesApiClient implements KubernetesAPIClientInterface {
* Create new pod
*
* @param podId Identifier of the pod
- * @param podLabel Pod name to be used by the pod label
+ * @param podName Pod name to be used by the pod label
+ * @param podLabels Map of labels to be applied to the pod
* @param dockerImage Docker image to be used by the pod
* @param cpu Number of cpu cores
* @param memory Memory allocation in megabytes
@@ -55,35 +56,29 @@ public class KubernetesApiClient implements KubernetesAPIClientInterface {
* @throws KubernetesClientException
*/
@Override
- public void createPod(String podId, String podLabel, String dockerImage, String cpu, String memory, List<ContainerPort> ports,
- List<EnvVar> environmentVariables)
+ public void createPod(String podId, String podName, Map<String, String> podLabels, String dockerImage, String cpu,
+ String memory, List<ContainerPort> ports, List<EnvVar> environmentVariables)
throws KubernetesClientException {
try {
if (log.isDebugEnabled()) {
log.debug(String.format("Creating kubernetes pod: [pod-id] %s [pod-name] %s [docker-image] %s " +
- "[cpu] %s [memory] %s [ports] %s",
- podId, podLabel, dockerImage, cpu, memory, ports));
+ "[cpu] %s [memory] %s [ports] %s", podId, podLabels, dockerImage, cpu, memory, ports));
}
// Create pod definition
Pod pod = new Pod();
pod.setApiVersion(Pod.ApiVersion.V_1);
pod.setKind(KubernetesConstants.KIND_POD);
-
pod.setSpec(new PodSpec());
pod.setMetadata(new ObjectMeta());
-
pod.getMetadata().setName(podId);
-
- Map<String, String> labels = new HashMap<String, String>();
- labels.put(KubernetesConstants.LABEL_NAME, podLabel);
- pod.getMetadata().setLabels(labels);
+ pod.getMetadata().setLabels(podLabels);
// Set container template
Container containerTemplate = new Container();
- containerTemplate.setName(podLabel);
+ containerTemplate.setName(podName);
containerTemplate.setImage(dockerImage);
containerTemplate.setEnv(environmentVariables);
List<Container> containerTemplates = new ArrayList<Container>();
@@ -110,7 +105,8 @@ public class KubernetesApiClient implements KubernetesAPIClientInterface {
if (log.isDebugEnabled()) {
log.debug(String.format("Kubernetes pod created successfully: [pod-id] %s", podId));
}
- } catch (Exception e) {
+ }
+ catch (Exception e) {
String msg = String.format("Could not create kubernetes pod: [pod-id] %s", podId);
log.error(msg, e);
throw new KubernetesClientException(msg, e);
@@ -121,7 +117,8 @@ public class KubernetesApiClient implements KubernetesAPIClientInterface {
public Pod getPod(String podId) throws KubernetesClientException {
try {
return kubernetesClient.getPod(podId);
- } catch (Exception e) {
+ }
+ catch (Exception e) {
String msg = String.format("Could not retrieve kubernetes pod: [pod-id] %s", podId);
log.error(msg, e);
throw new KubernetesClientException(msg, e);
@@ -132,7 +129,8 @@ public class KubernetesApiClient implements KubernetesAPIClientInterface {
public List<Pod> getPods() throws KubernetesClientException {
try {
return kubernetesClient.getPods().getItems();
- } catch (Exception e) {
+ }
+ catch (Exception e) {
String msg = "Error while retrieving kubernetes pods.";
log.error(msg, e);
throw new KubernetesClientException(msg, e);
@@ -143,7 +141,8 @@ public class KubernetesApiClient implements KubernetesAPIClientInterface {
public void deletePod(String podId) throws KubernetesClientException {
try {
kubernetesClient.deletePod(podId);
- } catch (Exception e) {
+ }
+ catch (Exception e) {
String message = String.format("Could not delete kubernetes pod: [pod-id] %s", podId);
log.error(message, e);
throw new KubernetesClientException(message, e);
@@ -154,7 +153,8 @@ public class KubernetesApiClient implements KubernetesAPIClientInterface {
* Create kubernetes service
*
* @param serviceId Service id
- * @param serviceLabel Service name to be used by the label name
+ * @param serviceName Service name to be used by the label name
+ * @param serviceLabels Service labels map
* @param servicePort Port to be exposed by the kubernetes node
* @param containerPortName Container port name defined in the port label
* @param containerPort Container port
@@ -163,15 +163,16 @@ public class KubernetesApiClient implements KubernetesAPIClientInterface {
* @throws KubernetesClientException
*/
@Override
- public void createService(String serviceId, String serviceLabel, int servicePort, String serviceType,
- String containerPortName, int containerPort, String sessionAffinity)
+ public void createService(String serviceId, String serviceName, Map<String, String> serviceLabels, int servicePort,
+ String serviceType, String containerPortName, int containerPort, String sessionAffinity)
throws KubernetesClientException {
try {
if (log.isDebugEnabled()) {
- log.debug(String.format("Creating kubernetes service: [service-id] %s [service-name] %s [service-port] " +
- "%d [container-port-name] %s [service-type] %s", serviceId, serviceLabel, servicePort,
- containerPortName, serviceType));
+ log.debug(
+ String.format("Creating kubernetes service: [service-id] %s [service-name] %s [service-port] " +
+ "%d [container-port-name] %s [service-type] %s", serviceId, serviceName,
+ servicePort, containerPortName, serviceType));
}
// Create service definition
@@ -203,14 +204,12 @@ public class KubernetesApiClient implements KubernetesAPIClientInterface {
ports.add(port);
service.getSpec().setPorts(ports);
- // Set label
- Map<String, String> labels = new HashMap<String, String>();
- labels.put(KubernetesConstants.LABEL_NAME, serviceLabel);
- service.getMetadata().setLabels(labels);
+ // Set labels
+ service.getMetadata().setLabels(serviceLabels);
// Set service selector
Map<String, String> selector = new HashMap<String, String>();
- selector.put(KubernetesConstants.LABEL_NAME, serviceLabel);
+ selector.put(KubernetesConstants.LABEL_NAME, serviceName);
service.getSpec().setSelector(selector);
// Invoke the api to create the service
@@ -218,12 +217,13 @@ public class KubernetesApiClient implements KubernetesAPIClientInterface {
if (log.isDebugEnabled()) {
log.debug(String.format("Kubernetes service created successfully: [service-id] %s [service-name] %s " +
- "[node-port] %d [container-port-name] %s [container-port] %d", serviceId, serviceLabel,
+ "[node-port] %d [container-port-name] %s [container-port] %d", serviceId, serviceName,
servicePort, containerPortName, containerPort));
}
- } catch (Exception e) {
+ }
+ catch (Exception e) {
String message = String.format("Could not create kubernetes service: [service-id] %s [service-name] %s " +
- "[node-port] %d [container-port-name] %s [container-port] %d", serviceId, serviceLabel,
+ "[node-port] %d [container-port-name] %s [container-port] %d", serviceId, serviceName,
servicePort, containerPortName, containerPort);
log.error(message, e);
throw new KubernetesClientException(message, e);
@@ -235,7 +235,8 @@ public class KubernetesApiClient implements KubernetesAPIClientInterface {
throws KubernetesClientException {
try {
return kubernetesClient.getService(serviceId);
- } catch (Exception e) {
+ }
+ catch (Exception e) {
String msg = String.format("Could not retrieve kubernetes service: [service-id] %s", serviceId);
log.error(msg, e);
throw new KubernetesClientException(msg, e);
@@ -246,7 +247,8 @@ public class KubernetesApiClient implements KubernetesAPIClientInterface {
public List<Service> getServices() throws KubernetesClientException {
try {
return kubernetesClient.getServices().getItems();
- } catch (Exception e) {
+ }
+ catch (Exception e) {
String msg = "Could not retrieve kubernetes services";
log.error(msg, e);
throw new KubernetesClientException(msg, e);
@@ -267,7 +269,8 @@ public class KubernetesApiClient implements KubernetesAPIClientInterface {
if (log.isDebugEnabled()) {
log.debug(String.format("Kubernetes service deleted successfully: [service-id] %s", serviceId));
}
- } catch (Exception e) {
+ }
+ catch (Exception e) {
String msg = String.format("Could not delete kubernetes service: [service-id] %s", serviceId);
log.error(msg, e);
throw new KubernetesClientException(msg, e);
http://git-wip-us.apache.org/repos/asf/stratos/blob/5a9537d0/components/org.apache.stratos.kubernetes.client/src/main/java/org/apache/stratos/kubernetes/client/interfaces/KubernetesAPIClientInterface.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.kubernetes.client/src/main/java/org/apache/stratos/kubernetes/client/interfaces/KubernetesAPIClientInterface.java b/components/org.apache.stratos.kubernetes.client/src/main/java/org/apache/stratos/kubernetes/client/interfaces/KubernetesAPIClientInterface.java
index dd980fe..95ea1e7 100644
--- a/components/org.apache.stratos.kubernetes.client/src/main/java/org/apache/stratos/kubernetes/client/interfaces/KubernetesAPIClientInterface.java
+++ b/components/org.apache.stratos.kubernetes.client/src/main/java/org/apache/stratos/kubernetes/client/interfaces/KubernetesAPIClientInterface.java
@@ -25,7 +25,9 @@ import io.fabric8.kubernetes.api.model.EnvVar;
import io.fabric8.kubernetes.api.model.Pod;
import io.fabric8.kubernetes.api.model.Service;
import org.apache.stratos.kubernetes.client.exceptions.KubernetesClientException;
+
import java.util.List;
+import java.util.Map;
public interface KubernetesAPIClientInterface {
@@ -34,7 +36,8 @@ public interface KubernetesAPIClientInterface {
* Create pod.
*
* @param podId id of the pod
- * @param podLabel pod label
+ * @param podName pod label
+ * @param podLabels Map of labels to be applied to the pod
* @param dockerImage docker image name
* @param cpu number of cpu cores
* @param memory memory allocation in mega bytes
@@ -42,8 +45,8 @@ public interface KubernetesAPIClientInterface {
* @param environmentVariables environment variables
* @throws KubernetesClientException
*/
- public void createPod(String podId, String podLabel, String dockerImage, String cpu, String memory,
- List<ContainerPort> ports, List<EnvVar> environmentVariables)
+ public void createPod(String podId, String podName, Map<String, String> podLabels, String dockerImage, String cpu,
+ String memory, List<ContainerPort> ports, List<EnvVar> environmentVariables)
throws KubernetesClientException;
/**
@@ -75,7 +78,8 @@ public interface KubernetesAPIClientInterface {
* Create service.
*
* @param serviceId
- * @param serviceLabel
+ * @param serviceName
+ * @param podLabels
* @param servicePort
* @param serviceType
* @param containerPortName
@@ -83,8 +87,8 @@ public interface KubernetesAPIClientInterface {
* @param sessionAffinity
* @throws KubernetesClientException
*/
- public void createService(String serviceId, String serviceLabel, int servicePort, String serviceType,
- String containerPortName, int containerPort, String sessionAffinity)
+ public void createService(String serviceId, String serviceName, Map<String, String> podLabels, int servicePort,
+ String serviceType, String containerPortName, int containerPort, String sessionAffinity)
throws KubernetesClientException;
/**
http://git-wip-us.apache.org/repos/asf/stratos/blob/5a9537d0/components/org.apache.stratos.kubernetes.client/src/test/java/org/apache/stratos/kubernetes/client/live/AbstractLiveTest.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.kubernetes.client/src/test/java/org/apache/stratos/kubernetes/client/live/AbstractLiveTest.java b/components/org.apache.stratos.kubernetes.client/src/test/java/org/apache/stratos/kubernetes/client/live/AbstractLiveTest.java
index 2fc2cc43..f8f2155 100644
--- a/components/org.apache.stratos.kubernetes.client/src/test/java/org/apache/stratos/kubernetes/client/live/AbstractLiveTest.java
+++ b/components/org.apache.stratos.kubernetes.client/src/test/java/org/apache/stratos/kubernetes/client/live/AbstractLiveTest.java
@@ -124,12 +124,13 @@ public class AbstractLiveTest extends TestCase {
log.info("Kubernetes resources cleaned");
}
- protected void createPod(String podId, String podName, String containerPortName, String cpu, String memory)
+ protected void createPod(String podId, String podName, Map<String, String> labelMap, String containerPortName,
+ String cpu, String memory)
throws KubernetesClientException {
log.info("Creating pod: [pod] " + podId);
List<ContainerPort> ports = createPorts(containerPortName);
- client.createPod(podId, podName, dockerImage, cpu, memory, ports, null);
+ client.createPod(podId, podName, labelMap, dockerImage, cpu, memory, ports, null);
podIdList.add(podId);
sleep(2000);
@@ -190,15 +191,18 @@ public class AbstractLiveTest extends TestCase {
for (String podId : podIdList) {
deletePod(podId);
}
- } catch (KubernetesClientException e) {
+ }
+ catch (KubernetesClientException e) {
log.error("Could not delete pods", e);
}
}
- protected void createService(String serviceId, String serviceName, int nodePort, String serviceType, String containerPortName,
- int containerPort, List<String> publicIPs) throws KubernetesClientException, InterruptedException, IOException {
+ protected void createService(String serviceId, String serviceName, Map<String, String> labelMap, int nodePort,
+ String serviceType, String containerPortName, int containerPort,
+ List<String> publicIPs)
+ throws KubernetesClientException, InterruptedException, IOException {
log.info("Creating service...");
- client.createService(serviceId, serviceName, nodePort, serviceType, containerPortName, containerPort,
+ client.createService(serviceId, serviceName, labelMap, nodePort, serviceType, containerPortName, containerPort,
KubernetesConstants.SESSION_AFFINITY_CLIENT_IP);
serviceIdList.add(serviceId);
@@ -227,7 +231,8 @@ public class AbstractLiveTest extends TestCase {
for (String serviceId : serviceIdList) {
deleteService(serviceId);
}
- } catch (KubernetesClientException e) {
+ }
+ catch (KubernetesClientException e) {
log.error("Could not delete services", e);
}
}
@@ -235,7 +240,8 @@ public class AbstractLiveTest extends TestCase {
protected void sleep(long time) {
try {
Thread.sleep(time);
- } catch (InterruptedException ignore) {
+ }
+ catch (InterruptedException ignore) {
}
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/5a9537d0/components/org.apache.stratos.kubernetes.client/src/test/java/org/apache/stratos/kubernetes/client/live/KubernetesApiClientLiveTest.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.kubernetes.client/src/test/java/org/apache/stratos/kubernetes/client/live/KubernetesApiClientLiveTest.java b/components/org.apache.stratos.kubernetes.client/src/test/java/org/apache/stratos/kubernetes/client/live/KubernetesApiClientLiveTest.java
index c7ae1da..4913be6 100644
--- a/components/org.apache.stratos.kubernetes.client/src/test/java/org/apache/stratos/kubernetes/client/live/KubernetesApiClientLiveTest.java
+++ b/components/org.apache.stratos.kubernetes.client/src/test/java/org/apache/stratos/kubernetes/client/live/KubernetesApiClientLiveTest.java
@@ -20,7 +20,6 @@
*/
package org.apache.stratos.kubernetes.client.live;
-import io.fabric8.kubernetes.api.model.Pod;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.stratos.kubernetes.client.exceptions.KubernetesClientException;
@@ -28,6 +27,8 @@ import org.junit.Test;
import org.junit.experimental.categories.Category;
import java.net.Socket;
+import java.util.HashMap;
+import java.util.Map;
/**
* Notes:
@@ -47,9 +48,13 @@ public class KubernetesApiClientLiveTest extends AbstractLiveTest {
@Test
public void testPodCreation() throws Exception {
log.info("Testing pod creation...");
+ Map<String, String> podLabels1 = new HashMap<>();
+ podLabels1.put("applicationId", "my-application-1");
+ createPod("stratos-test-pod-1", "stratos-test-pod", podLabels1, "http-1", "1", "512Mi");
- createPod("stratos-test-pod-1", "stratos-test-pod", "http-1", "1", "512Mi");
- createPod("stratos-test-pod-2", "stratos-test-pod", "http-1", "2", "4Gi");
+ Map<String, String> podLabels2 = new HashMap<>();
+ podLabels2.put("applicationId", "my-application-2");
+ createPod("stratos-test-pod-2", "stratos-test-pod", podLabels2, "http-1", "2", "4Gi");
deletePod("stratos-test-pod-1");
deletePod("stratos-test-pod-2");
@@ -73,10 +78,19 @@ public class KubernetesApiClientLiveTest extends AbstractLiveTest {
String containerPortName = "http-1";
String serviceType = "NodePort";
- createService(serviceId, serviceName, SERVICE_PORT, serviceType, containerPortName, containerPort, minionPublicIPs);
+ Map<String, String> serviceLabels1 = new HashMap<>();
+ serviceLabels1.put("applicationId", "my-application-1");
+ createService(serviceId, serviceName, serviceLabels1, SERVICE_PORT, serviceType, containerPortName,
+ containerPort,
+ minionPublicIPs);
- createPod("stratos-test-pod-3", serviceName, containerPortName, "1", "512");
- createPod("stratos-test-pod-4", serviceName, containerPortName, "2", "512");
+ Map<String, String> podLabels1 = new HashMap<>();
+ podLabels1.put("applicationId", "my-application-3");
+ createPod("stratos-test-pod-3", serviceName, podLabels1, containerPortName, "1", "512");
+
+ Map<String, String> podLabels2 = new HashMap<>();
+ podLabels2.put("applicationId", "my-application-4");
+ createPod("stratos-test-pod-4", serviceName, podLabels2, containerPortName, "2", "512");
if (testServiceSocket) {
// test service accessibility