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()))
 {

Reply via email to