Validate the application id length to support kubernetes service name
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/f40fe96b Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/f40fe96b Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/f40fe96b Branch: refs/heads/stratos-4.1.x Commit: f40fe96bf62050f09c79e3d1f85d91dea99fb8a5 Parents: ef443e7 Author: gayangunarathne <[email protected]> Authored: Thu Sep 17 17:43:50 2015 +0530 Committer: gayangunarathne <[email protected]> Committed: Thu Sep 17 17:43:50 2015 +0530 ---------------------------------------------------------------------- .../cloud/controller/iaases/kubernetes/KubernetesIaas.java | 4 ++-- .../apache/stratos/rest/endpoint/api/StratosApiV41Utils.java | 6 ++++++ 2 files changed, 8 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/stratos/blob/f40fe96b/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 cf913b0..53a8c98 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 @@ -64,8 +64,8 @@ public class KubernetesIaas extends Iaas { private static final String KUBERNETES_SERVICE_SESSION_AFFINITY = "KUBERNETES_SERVICE_SESSION_AFFINITY"; private static final String KUBERNETES_CONTAINER_CPU_DEFAULT = "kubernetes.container.cpu.default"; private static final String KUBERNETES_CONTAINER_MEMORY_DEFAULT = "kubernetes.container.memory.default"; - public static final String POD_ID_PREFIX = "pod"; - public static final String SERVICE_NAME_PREFIX = "service"; + public static final String POD_ID_PREFIX = "p"; + public static final String SERVICE_NAME_PREFIX = "s"; private PartitionValidator partitionValidator; private List<NameValuePair> payload; http://git-wip-us.apache.org/repos/asf/stratos/blob/f40fe96b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java index 20ae749..94ce9ae 100644 --- a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java +++ b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java @@ -109,6 +109,7 @@ public class StratosApiV41Utils { public static final String APPLICATION_STATUS_UNDEPLOYING = "Undeploying"; public static final String KUBERNETES_IAAS_PROVIDER = "kubernetes"; private static final String METADATA_REG_PATH = "metadata/"; + private static final int MAX_APPLICATION_ID_LENGTH = 20; /** @@ -1367,6 +1368,11 @@ public class StratosApiV41Utils { log.error(message); throw new ApplicationAlreadyExistException(message); } + if(StringUtils.length(appDefinition.getApplicationId())> MAX_APPLICATION_ID_LENGTH){ + String message = String.format("Application ID length is too long.(Application ID maximum length %d characters", MAX_APPLICATION_ID_LENGTH); + log.error(message); + throw new ApplicationAlreadyExistException(message); + } // check if an application with same id already exists try { if (AutoscalerServiceClient.getInstance().existApplication(appDefinition.getApplicationId())) {
