Changes to CC service Impl to use the Kub client.
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/6be7e127 Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/6be7e127 Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/6be7e127 Branch: refs/heads/docker-integration Commit: 6be7e12762e2c4d065489ddd714b3c02578183d4 Parents: afb430d Author: Nirmal Fernando <[email protected]> Authored: Fri Sep 19 16:03:04 2014 +0530 Committer: Nirmal Fernando <[email protected]> Committed: Fri Sep 19 16:03:20 2014 +0530 ---------------------------------------------------------------------- .../impl/CloudControllerServiceImpl.java | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/stratos/blob/6be7e127/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/impl/CloudControllerServiceImpl.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/impl/CloudControllerServiceImpl.java b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/impl/CloudControllerServiceImpl.java index 2c5a339..01371c1 100644 --- a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/impl/CloudControllerServiceImpl.java +++ b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/impl/CloudControllerServiceImpl.java @@ -44,6 +44,9 @@ import org.apache.stratos.cloud.controller.util.CloudControllerUtil; import org.apache.stratos.cloud.controller.validate.interfaces.PartitionValidator; import org.apache.stratos.common.constants.StratosConstants; import org.apache.stratos.kubernetes.client.KubernetesApiClient; +import org.apache.stratos.kubernetes.client.api.KubernetesClientAPI; +import org.apache.stratos.kubernetes.client.api.ReplicationControllerAPI; +import org.apache.stratos.kubernetes.client.api.ServiceAPI; import org.apache.stratos.kubernetes.client.model.ReplicationController; import org.apache.stratos.kubernetes.client.model.Service; import org.apache.stratos.messaging.domain.topology.Member; @@ -1354,8 +1357,7 @@ public class CloudControllerServiceImpl implements CloudControllerService { throw new IllegalArgumentException(msg); } - KubernetesApiClient client = kubClusterContext.getKubernetesApiClient(); - + KubernetesApiClient kubApi = kubClusterContext.getKubApi(); // first let's create a replication controller. MemberContextToReplicationController controllerFunction = new MemberContextToReplicationController(); @@ -1366,7 +1368,7 @@ public class CloudControllerServiceImpl implements CloudControllerService { " for "+ memberContext + " to Kubernetes layer."); } - client.createReplicationController(controller); + kubApi.createReplicationController(controller); if (log.isDebugEnabled()) { log.debug("Cloud Controller successfully starte the controller " @@ -1382,7 +1384,7 @@ public class CloudControllerServiceImpl implements CloudControllerService { " for "+ memberContext + " to Kubernetes layer."); } - client.createService(service); + kubApi.createService(service); if (log.isDebugEnabled()) { log.debug("Cloud Controller successfully starte the controller " @@ -1429,12 +1431,17 @@ public class CloudControllerServiceImpl implements CloudControllerService { KubernetesClusterContext origCtxt = dataHolder.getKubernetesClusterContext(kubernetesClusterId); KubernetesClusterContext newCtxt = new KubernetesClusterContext(kubernetesClusterId, kubernetesPortRange, kubernetesMasterIp); + if (origCtxt == null) { + dataHolder.addKubernetesClusterContext(newCtxt); + return newCtxt; + } + if (!origCtxt.equals(newCtxt)) { // if for some reason master IP etc. have changed newCtxt.setAvailableHostPorts(origCtxt.getAvailableHostPorts()); dataHolder.addKubernetesClusterContext(newCtxt); return newCtxt; - } else { + } else { return origCtxt; } }
