You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by ga...@apache.org on 2015/08/11 13:03:02 UTC
[1/2] stratos git commit: Fixing issues in integration tests
Repository: stratos
Updated Branches:
refs/heads/tenant-isolation 17c067139 -> 7dc733655
Fixing issues in integration tests
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/efa9ce53
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/efa9ce53
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/efa9ce53
Branch: refs/heads/tenant-isolation
Commit: efa9ce53cf1667b20643524b1798ee888abf1c3d
Parents: 17c0671
Author: Dinithi <di...@wso2.com>
Authored: Mon Aug 10 23:18:20 2015 +0530
Committer: Dinithi <di...@wso2.com>
Committed: Mon Aug 10 23:18:20 2015 +0530
----------------------------------------------------------------------
.../rest/endpoint/api/StratosApiV41.java | 8 +-
.../rest/endpoint/api/StratosApiV41Utils.java | 116 +++++++++++--------
.../util/converter/ObjectConverter.java | 1 +
.../application/SampleApplicationsTest.java | 18 +--
4 files changed, 79 insertions(+), 64 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/efa9ce53/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
index fe548d4..7ca3070 100644
--- a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
+++ b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
@@ -886,7 +886,7 @@ public class StratosApiV41 extends AbstractApi {
@AuthorizationAction("/permission/admin/stratos/applications/view")
public Response getApplication(
@PathParam("applicationId") String applicationId) throws RestAPIException {
- PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
+ PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
ApplicationBean applicationDefinition = StratosApiV41Utils.getApplication(applicationId,carbonContext.getTenantId());
if (applicationDefinition == null) {
return Response.status(Response.Status.NOT_FOUND).entity(new ResponseMessageBean(
@@ -1292,7 +1292,7 @@ public class StratosApiV41 extends AbstractApi {
public Response undeployApplication(
@PathParam("applicationId") String applicationId, @QueryParam("force") @DefaultValue("false") boolean force)
throws RestAPIException {
- PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
+ PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
ApplicationBean applicationDefinition = StratosApiV41Utils.getApplication(applicationId,
carbonContext.getTenantId());
if (applicationDefinition == null) {
@@ -1362,7 +1362,7 @@ public class StratosApiV41 extends AbstractApi {
@AuthorizationAction("/permission/admin/stratos/applications/manage")
public Response removeApplication(
@PathParam("applicationId") String applicationId) throws RestAPIException {
- PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
+ PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
ApplicationBean applicationDefinition = StratosApiV41Utils.getApplication(applicationId,carbonContext.getTenantId());
if (applicationDefinition == null) {
return Response.status(Response.Status.NOT_FOUND).entity(new ResponseMessageBean(
@@ -1954,7 +1954,7 @@ public class StratosApiV41 extends AbstractApi {
PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
KubernetesCluster kubernetesCluster = CloudControllerServiceClient.getInstance().getKubernetesClusterByTenantId
(kubernetesClusterBean
- .getClusterId(), carbonContext.getTenantId());
+ .getClusterId(), carbonContext.getTenantId());
StratosApiV41Utils.updateKubernetesCluster(kubernetesClusterBean, kubernetesCluster.getClusterUuid(),
kubernetesCluster.getTenantId());
URI url = uriInfo.getAbsolutePathBuilder().path(kubernetesCluster.getClusterUuid()).build();
http://git-wip-us.apache.org/repos/asf/stratos/blob/efa9ce53/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 aa4239d..d67fe4b 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
@@ -233,7 +233,6 @@ public class StratosApiV41Utils {
} catch (CloudControllerServiceCartridgeNotFoundExceptionException e) {
String msg = "Could not find existing cartridge";
log.error(msg, e);
- e.printStackTrace();
}
}
@@ -896,18 +895,18 @@ public class StratosApiV41Utils {
AutoscalerServiceClient autoscalerServiceClient = getAutoscalerServiceClient();
if (autoscalerServiceClient != null) {
- try {
- PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
- String autoscalerUuid = autoscalerServiceClient
- .getAutoScalePolicyForTenant(autoscalePolicyBean.getId(), carbonContext.getTenantId())
- .getUuid();
- org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy autoscalePolicy =
- ObjectConverter.convertToCCAutoscalerPojo(autoscalePolicyBean,autoscalerUuid,carbonContext.getTenantId());
- autoscalerServiceClient.updateAutoscalingPolicy(autoscalePolicy);
- } catch (RemoteException e) {
- log.error(e.getMessage(), e);
- throw new RestAPIException(e.getMessage(), e);
- }
+ try {
+ PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
+ String autoscalerUuid = autoscalerServiceClient
+ .getAutoScalePolicyForTenant(autoscalePolicyBean.getId(), carbonContext.getTenantId())
+ .getUuid();
+ org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy autoscalePolicy =
+ ObjectConverter.convertToCCAutoscalerPojo(autoscalePolicyBean,autoscalerUuid,carbonContext.getTenantId());
+ autoscalerServiceClient.updateAutoscalingPolicy(autoscalePolicy);
+ } catch (RemoteException e) {
+ log.error(e.getMessage(), e);
+ throw new RestAPIException(e.getMessage(), e);
+ }
}
}
@@ -928,7 +927,7 @@ public class StratosApiV41Utils {
if (autoscalerServiceClient != null) {
AutoscalePolicy autoscalePolicyBean;
try {
- PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
+ PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
autoscalePolicyBean =autoscalerServiceClient.getAutoScalePolicyForTenant(autoscalePolicyId,carbonContext.getTenantId());
autoscalerServiceClient.removeAutoscalingPolicy(autoscalePolicyBean.getUuid());
} catch (RemoteException e) {
@@ -1034,7 +1033,9 @@ public class StratosApiV41Utils {
log.debug("Checking cartridges in cartridge group " + cartridgeGroupUuid);
}
-
+ ServiceGroup serviceGroup = ObjectConverter.convertServiceGroupDefinitionToASStubServiceGroup
+ (serviceGroupDefinition,UUID.randomUUID().toString(), tenantId);
+ findCartridgesInGroupBean(serviceGroup, cartridgeTypes);
//validate the group definition to check if cartridges duplicate in any groups defined
validateCartridgeDuplicationInGroupDefinition(serviceGroupDefinition);
@@ -1104,10 +1105,6 @@ public class StratosApiV41Utils {
"sub-groups defined:" + duplicatesOutput.toString());
}
}
-
- ServiceGroup serviceGroup = ObjectConverter.convertServiceGroupDefinitionToASStubServiceGroup(
- serviceGroupDefinition,UUID.randomUUID().toString(), tenantId);
- findCartridgesInGroupBean(serviceGroup, cartridgeTypes);
AutoscalerServiceClient asServiceClient = getAutoscalerServiceClient();
try {
asServiceClient.addServiceGroup(serviceGroup);
@@ -1417,7 +1414,7 @@ public class StratosApiV41Utils {
if (groupBean.getCartridges() != null) {
for (String cartridge : groupBean.getCartridges()) {
if (!cartridges.contains(cartridge)) {
- cartridges.add(groupBean.getUuid());
+ cartridges.add(cartridge);
}
}
}
@@ -1561,7 +1558,8 @@ public class StratosApiV41Utils {
* @param cartridgeGroups List <String> cartridgeGroups
*/
private static void findCartridgesAndGroupsInApplication(
- ApplicationBean applicationBean, List<String> cartridges, List<String> cartridgeGroups) {
+ ApplicationBean applicationBean, List<String> cartridges, List<String> cartridgeGroups) throws
+ RemoteException, RestAPIException {
if (applicationBean == null || applicationBean.getComponents() == null) {
return;
@@ -1587,15 +1585,20 @@ public class StratosApiV41Utils {
* @param cartridges List <String>
* @param cartridgeGroups List <String>
*/
- private static void findCartridgesAndGroupsInCartridgeGroup(
- CartridgeGroupReferenceBean groupReferenceBean, List<String> cartridges, List<String> cartridgeGroups) {
+ private static void findCartridgesAndGroupsInCartridgeGroup(CartridgeGroupReferenceBean groupReferenceBean,
+ List<String> cartridges,
+ List<String> cartridgeGroups) throws RemoteException,
+ RestAPIException {
+ PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
if (groupReferenceBean == null || cartridgeGroups == null) {
return;
}
if (!cartridgeGroups.contains(groupReferenceBean.getName())) {
- cartridgeGroups.add(groupReferenceBean.getUuid());
+ ServiceGroup serviceGroup = AutoscalerServiceClient.getInstance().getServiceGroupByTenant
+ (groupReferenceBean.getName(), carbonContext.getTenantId());
+ cartridgeGroups.add(serviceGroup.getUuid());
}
if (groupReferenceBean.getGroups() != null) {
@@ -1615,15 +1618,26 @@ public class StratosApiV41Utils {
* @param cartridges List <String>
*/
private static void findCartridgeNamesInCartridges(
- List<CartridgeReferenceBean> cartridgeReferenceBeans, List<String> cartridges) {
+ List<CartridgeReferenceBean> cartridgeReferenceBeans, List<String> cartridges) throws RemoteException,
+ RestAPIException {
+ PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
if (cartridgeReferenceBeans == null || cartridges == null) {
return;
}
for (CartridgeReferenceBean cartridgeReferenceBean : cartridgeReferenceBeans) {
if (cartridgeReferenceBean != null && !cartridges.contains(cartridgeReferenceBean.getUuid())) {
- cartridges.add(cartridgeReferenceBean.getUuid());
+ Cartridge cartridge = null;
+ try {
+ cartridge = CloudControllerServiceClient.getInstance().getCartridgeByTenant
+ (cartridgeReferenceBean.getType(), carbonContext.getTenantId());
+ } catch (CloudControllerServiceCartridgeNotFoundExceptionException e) {
+ String message = e.getFaultMessage().getCartridgeNotFoundException().getMessage();
+ log.error(message);
+ throw new RestAPIException(message, e);
+ }
+ cartridges.add(cartridge.getUuid());
}
}
}
@@ -2480,10 +2494,10 @@ public class StratosApiV41Utils {
throw new RestAPIException("Application id is null");
}
- //multi tenant application can be added by only the super tenant.Hence passing the super tenant id to retrieve
- // the application
+ //multi tenant application can be added by only the super tenant.Hence passing the super tenant id to retrieve
+ // the application
ApplicationBean applicationBean = getApplication(applicationId, SUPER_TENANT_ID);
- Application application = ApplicationManager.getApplications().getApplicationByTenant(applicationId, SUPER_TENANT_ID);
+ Application application = ApplicationManager.getApplications().getApplicationByTenant(applicationId, SUPER_TENANT_ID);
if ((applicationBean == null) || (application == null)) {
throw new RestAPIException("Application not found: [application-id] " + applicationId);
@@ -2525,7 +2539,7 @@ public class StratosApiV41Utils {
if (log.isInfoEnabled()) {
log.info(String.format("Application signup added successfully: [application-id]" +
- " %s [tenant-id] %d", applicationId, tenantId));
+ " %s [tenant-id] %d", applicationId, tenantId));
}
serviceClient.notifyArtifactUpdatedEventForSignUp(applicationId, tenantId);
@@ -2674,10 +2688,10 @@ public class StratosApiV41Utils {
int tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId();
if (domainMappingsBean.getDomainMappings() != null) {
StratosManagerServiceClient serviceClient = StratosManagerServiceClient.getInstance();
- String applicationUuid =
- AutoscalerServiceClient.getInstance().getApplicationByTenant(applicationId, tenantId)
- .getApplicationUuid();
- for (DomainMappingBean domainMappingBean : domainMappingsBean.getDomainMappings()) {
+ String applicationUuid =
+ AutoscalerServiceClient.getInstance().getApplicationByTenant(applicationId, tenantId)
+ .getApplicationUuid();
+ for (DomainMappingBean domainMappingBean : domainMappingsBean.getDomainMappings()) {
ClusterDataHolder clusterDataHolder = findClusterDataHolder(
applicationUuid,
domainMappingBean.getCartridgeAlias());
@@ -2712,7 +2726,7 @@ public class StratosApiV41Utils {
* @return ClusterDataHolder
*/
private static ClusterDataHolder findClusterDataHolder(String applicationId, String cartridgeAlias) {
- int tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId();
+ int tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId();
Application application = ApplicationManager.getApplications().getApplicationByTenant(applicationId,tenantId);
if (application == null) {
throw new RuntimeException(String.format("Application not found: [application-id] %s", applicationId));
@@ -2738,9 +2752,9 @@ public class StratosApiV41Utils {
try {
int tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId();
- String applicationUuid =
- AutoscalerServiceClient.getInstance().getApplicationByTenant(applicationId, tenantId)
- .getApplicationUuid();
+ String applicationUuid =
+ AutoscalerServiceClient.getInstance().getApplicationByTenant(applicationId, tenantId)
+ .getApplicationUuid();
StratosManagerServiceClient serviceClient = StratosManagerServiceClient.getInstance();
if (domainName != null) {
@@ -2912,15 +2926,15 @@ public class StratosApiV41Utils {
NetworkPartition networkPartition = null;
PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
- if(networkPartitions!=null && (networkPartitions.length>0)) {
- for (NetworkPartition networkPartition1 : networkPartitions) {
- if (carbonContext.getTenantId() == networkPartition1.getTenantId()) {
- if (networkPartition1.getId().equals(networkPartitionId)) {
- networkPartition = networkPartition1;
- }
- }
- }
- }
+ if(networkPartitions!=null && (networkPartitions.length>0)) {
+ for (NetworkPartition networkPartition1 : networkPartitions) {
+ if (carbonContext.getTenantId() == networkPartition1.getTenantId()) {
+ if (networkPartition1.getId().equals(networkPartitionId)) {
+ networkPartition = networkPartition1;
+ }
+ }
+ }
+ }
if (networkPartition == null) {
return null;
}
@@ -3751,11 +3765,11 @@ public class StratosApiV41Utils {
*/
private static void validateGroupDuplicationInGroupDefinition(CartridgeGroupBean groupBean)
throws InvalidCartridgeGroupDefinitionException, RemoteException {
- AutoscalerServiceClient autoscalerServiceClient = AutoscalerServiceClient.getInstance();
- PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
- ServiceGroup serviceGroup = autoscalerServiceClient.getServiceGroupByTenant(groupBean.getName(),
+ AutoscalerServiceClient autoscalerServiceClient = AutoscalerServiceClient.getInstance();
+ PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
+ ServiceGroup serviceGroup = autoscalerServiceClient.getServiceGroupByTenant(groupBean.getName(),
+ carbonContext.getTenantId());
- validateGroupDuplicationInGroupDefinition(serviceGroup, new ArrayList<String>());
+ validateGroupDuplicationInGroupDefinition(serviceGroup, new ArrayList<String>());
}
/**
http://git-wip-us.apache.org/repos/asf/stratos/blob/efa9ce53/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/ObjectConverter.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/ObjectConverter.java b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/ObjectConverter.java
index 2acb81e..fbb0039 100644
--- a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/ObjectConverter.java
+++ b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/ObjectConverter.java
@@ -1213,6 +1213,7 @@ public class ObjectConverter {
for (GroupContext groupContext : groupContexts) {
if (groupContext != null) {
CartridgeGroupReferenceBean groupDefinition = new CartridgeGroupReferenceBean();
+ groupDefinition.setUuid(groupContext.getUuid());
groupDefinition.setAlias(groupContext.getAlias());
groupDefinition.setGroupMaxInstances(groupContext.getGroupMaxInstances());
groupDefinition.setGroupMinInstances(groupContext.getGroupMinInstances());
http://git-wip-us.apache.org/repos/asf/stratos/blob/efa9ce53/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/SampleApplicationsTest.java
----------------------------------------------------------------------
diff --git a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/SampleApplicationsTest.java b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/SampleApplicationsTest.java
index 2e1c617..2dad064 100644
--- a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/SampleApplicationsTest.java
+++ b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/SampleApplicationsTest.java
@@ -159,7 +159,7 @@ public class SampleApplicationsTest extends StratosTestServerManager {
assertEquals(updatedBean.getComponents().getGroups().get(0).getGroups().get(0).getGroups().get(0).getCartridges().get(0).getCartridgeMax(), 3);
- /* boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "G1",
+ boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "G1",
RestConstants.CARTRIDGE_GROUPS_NAME);
assertEquals(removedGroup, false);
@@ -175,7 +175,7 @@ public class SampleApplicationsTest extends StratosTestServerManager {
boolean removedDep = restClient.removeEntity(RestConstants.DEPLOYMENT_POLICIES,
"deployment-policy-1", RestConstants.DEPLOYMENT_POLICIES_NAME);
- assertEquals(removedDep, false); */
+ assertEquals(removedDep, false);
boolean removed = restClient.removeEntity(RestConstants.APPLICATIONS, "g-sc-G123-1",
RestConstants.APPLICATIONS_NAME);
@@ -185,7 +185,7 @@ public class SampleApplicationsTest extends StratosTestServerManager {
"g-sc-G123-1", ApplicationBean.class, RestConstants.APPLICATIONS_NAME);
assertEquals(beanRemoved, null);
- boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "G1",
+ removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "G1",
RestConstants.CARTRIDGE_GROUPS_NAME);
assertEquals(removedGroup, true);
@@ -201,15 +201,15 @@ public class SampleApplicationsTest extends StratosTestServerManager {
RestConstants.CARTRIDGES_NAME);
assertEquals(removedC3, true);
- boolean removedAuto = restClient.removeEntity(RestConstants.AUTOSCALING_POLICIES,
+ removedAuto = restClient.removeEntity(RestConstants.AUTOSCALING_POLICIES,
autoscalingPolicyId, RestConstants.AUTOSCALING_POLICIES_NAME);
assertEquals(removedAuto, true);
- boolean removedDep = restClient.removeEntity(RestConstants.DEPLOYMENT_POLICIES,
+ removedDep = restClient.removeEntity(RestConstants.DEPLOYMENT_POLICIES,
"deployment-policy-1", RestConstants.DEPLOYMENT_POLICIES_NAME);
assertEquals(removedDep, true);
- boolean removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS,
+ removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS,
"network-partition-1", RestConstants.NETWORK_PARTITIONS_NAME);
assertEquals(removedNet, true);
@@ -323,9 +323,9 @@ public class SampleApplicationsTest extends StratosTestServerManager {
"g-sc-G123-1", ApplicationBean.class, RestConstants.APPLICATIONS_NAME);
assertEquals(updatedBean.getApplicationId(), "g-sc-G123-1");
- /* boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "G1",
+ boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "G1",
RestConstants.CARTRIDGE_GROUPS_NAME);
- assertEquals(removedGroup, false); */
+ assertEquals(removedGroup, false);
boolean removedAuto = restClient.removeEntity(RestConstants.AUTOSCALING_POLICIES,
autoscalingPolicyId, RestConstants.AUTOSCALING_POLICIES_NAME);
@@ -371,7 +371,7 @@ public class SampleApplicationsTest extends StratosTestServerManager {
"g-sc-G123-1", ApplicationBean.class, RestConstants.APPLICATIONS_NAME);
assertEquals(beanRemoved, null);
- boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "G1",
+ removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "G1",
RestConstants.CARTRIDGE_GROUPS_NAME);
assertEquals(removedGroup, true);
[2/2] stratos git commit: Fixing issues in Service Group updation
Posted by ga...@apache.org.
Fixing issues in Service Group updation
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/7dc73365
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/7dc73365
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/7dc73365
Branch: refs/heads/tenant-isolation
Commit: 7dc733655256e75d3c38ddf4bafe004672fbfaea
Parents: efa9ce5
Author: Dinithi <di...@wso2.com>
Authored: Tue Aug 11 14:54:51 2015 +0530
Committer: Dinithi <di...@wso2.com>
Committed: Tue Aug 11 14:54:51 2015 +0530
----------------------------------------------------------------------
.../client/CloudControllerServiceClient.java | 4 +--
.../rest/endpoint/api/StratosApiV41Utils.java | 38 ++++++++------------
.../application/ApplicationBurstingTest.java | 6 ++--
.../application/SingleClusterScalingTest.java | 6 ++--
.../tests/group/CartridgeGroupTest.java | 10 +++---
5 files changed, 27 insertions(+), 37 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/7dc73365/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/client/CloudControllerServiceClient.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/client/CloudControllerServiceClient.java b/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/client/CloudControllerServiceClient.java
index 0bd9272..dea1e3a 100644
--- a/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/client/CloudControllerServiceClient.java
+++ b/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/client/CloudControllerServiceClient.java
@@ -120,9 +120,9 @@ public class CloudControllerServiceClient {
return stub.getCartridgesByTenant(tenantId);
}
- public Cartridge getCartridge(String cartridgeType) throws RemoteException,
+ public Cartridge getCartridge(String cartridgeUuid) throws RemoteException,
CloudControllerServiceCartridgeNotFoundExceptionException {
- return stub.getCartridge(cartridgeType);
+ return stub.getCartridge(cartridgeUuid);
}
public Cartridge getCartridgeByTenant(String cartridgeType,int tenantId) throws RemoteException,
http://git-wip-us.apache.org/repos/asf/stratos/blob/7dc73365/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 d67fe4b..5c9ab69 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
@@ -1035,7 +1035,11 @@ public class StratosApiV41Utils {
ServiceGroup serviceGroup = ObjectConverter.convertServiceGroupDefinitionToASStubServiceGroup
(serviceGroupDefinition,UUID.randomUUID().toString(), tenantId);
- findCartridgesInGroupBean(serviceGroup, cartridgeTypes);
+ try {
+ findCartridgesInGroupBean(serviceGroup, cartridgeTypes);
+ } catch (RemoteException e) {
+ throw new RestAPIException(e.getMessage());
+ }
//validate the group definition to check if cartridges duplicate in any groups defined
validateCartridgeDuplicationInGroupDefinition(serviceGroupDefinition);
@@ -1051,30 +1055,13 @@ public class StratosApiV41Utils {
throw new RestAPIException(message, e);
}
-
- CloudControllerServiceClient ccServiceClient = getCloudControllerServiceClient();
-
cartridgeUuids = new String[cartridgeTypes.size()];
int j = 0;
- for (String cartridgeType : cartridgeTypes) {
- try {
- Cartridge cartridge = ccServiceClient.getCartridgeByTenant(cartridgeType, tenantId);
- if (cartridge == null) {
- // cartridge is not deployed, can't continue
- log.error("Invalid cartridge found in cartridge group " + cartridgeType);
- throw new InvalidCartridgeException();
- } else {
- cartridgeUuids[j] = cartridge.getUuid();
- j++;
- }
- } catch (RemoteException e) {
- String message = "Could not add the cartridge group: " + cartridgeGroupUuid;
- log.error(message, e);
- throw new RestAPIException(message, e);
- }
+ for (String cartridgeUuid : cartridgeTypes) {
+ cartridgeUuids[j] = cartridgeUuid;
+ j++;
}
-
// if any sub groups are specified in the group, they should be already deployed
if (serviceGroupDefinition.getGroups() != null) {
if (log.isDebugEnabled()) {
@@ -1405,8 +1392,9 @@ public class StratosApiV41Utils {
* @param groupBean groupBean
* @param cartridges List of cartridges
*/
- private static void findCartridgesInGroupBean(ServiceGroup groupBean, List<String> cartridges) {
-
+ private static void findCartridgesInGroupBean(ServiceGroup groupBean, List<String> cartridges) throws
+ RemoteException, CloudControllerServiceCartridgeNotFoundExceptionException {
+ PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
if (groupBean == null || cartridges == null) {
return;
}
@@ -1414,7 +1402,9 @@ public class StratosApiV41Utils {
if (groupBean.getCartridges() != null) {
for (String cartridge : groupBean.getCartridges()) {
if (!cartridges.contains(cartridge)) {
- cartridges.add(cartridge);
+ Cartridge cartridge1 = CloudControllerServiceClient.getInstance().getCartridgeByTenant(cartridge,
+ groupBean.getTenantId());
+ cartridges.add(cartridge1.getUuid());
}
}
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/7dc73365/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/ApplicationBurstingTest.java
----------------------------------------------------------------------
diff --git a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/ApplicationBurstingTest.java b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/ApplicationBurstingTest.java
index 4749faa..a1f2c6a 100644
--- a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/ApplicationBurstingTest.java
+++ b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/ApplicationBurstingTest.java
@@ -123,9 +123,9 @@ public class ApplicationBurstingTest extends StratosTestServerManager {
//Cluster active handling
TopologyHandler.getInstance().assertClusterActivation(bean.getApplicationId());
- /* boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "esb-php-group",
+ boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "esb-php-group",
RestConstants.CARTRIDGE_GROUPS_NAME);
- assertEquals(removedGroup, false); */
+ assertEquals(removedGroup, false);
boolean removedAuto = restClient.removeEntity(RestConstants.AUTOSCALING_POLICIES,
autoscalingPolicyId, RestConstants.AUTOSCALING_POLICIES_NAME);
@@ -171,7 +171,7 @@ public class ApplicationBurstingTest extends StratosTestServerManager {
"cartridge-group-app", ApplicationBean.class, RestConstants.APPLICATIONS_NAME);
assertEquals(beanRemoved, null);
- boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "esb-php-group",
+ removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "esb-php-group",
RestConstants.CARTRIDGE_GROUPS_NAME);
assertEquals(removedGroup, true);
http://git-wip-us.apache.org/repos/asf/stratos/blob/7dc73365/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/SingleClusterScalingTest.java
----------------------------------------------------------------------
diff --git a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/SingleClusterScalingTest.java b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/SingleClusterScalingTest.java
index 5f2919d..2fd4100 100644
--- a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/SingleClusterScalingTest.java
+++ b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/SingleClusterScalingTest.java
@@ -123,9 +123,9 @@ public class SingleClusterScalingTest extends StratosTestServerManager {
//Cluster active handling
TopologyHandler.getInstance().assertClusterActivation(bean.getApplicationId());
- /* boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "esb-php-group",
+ boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "esb-php-group",
RestConstants.CARTRIDGE_GROUPS_NAME);
- assertEquals(removedGroup, false); */
+ assertEquals(removedGroup, false);
boolean removedAuto = restClient.removeEntity(RestConstants.AUTOSCALING_POLICIES,
autoscalingPolicyId, RestConstants.AUTOSCALING_POLICIES_NAME);
@@ -171,7 +171,7 @@ public class SingleClusterScalingTest extends StratosTestServerManager {
"cartridge-group-app", ApplicationBean.class, RestConstants.APPLICATIONS_NAME);
assertEquals(beanRemoved, null);
- boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "esb-php-group",
+ removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "esb-php-group",
RestConstants.CARTRIDGE_GROUPS_NAME);
assertEquals(removedGroup, true);
http://git-wip-us.apache.org/repos/asf/stratos/blob/7dc73365/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/group/CartridgeGroupTest.java
----------------------------------------------------------------------
diff --git a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/group/CartridgeGroupTest.java b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/group/CartridgeGroupTest.java
index 8db4af8..4cd3235 100644
--- a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/group/CartridgeGroupTest.java
+++ b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/group/CartridgeGroupTest.java
@@ -75,7 +75,7 @@ public class CartridgeGroupTest extends StratosTestServerManager {
assertEquals(String.format("Updated Cartridge Group didn't match: [cartridge-group-name] %s",
"g4-g5-g6"), updatedBean.getName(), "G4");
- /* boolean removedC1 = restClient.removeEntity(RestConstants.CARTRIDGES, "c4",
+ boolean removedC1 = restClient.removeEntity(RestConstants.CARTRIDGES, "c4",
RestConstants.CARTRIDGE_GROUPS_NAME);
assertEquals(String.format("Cartridge can be removed while it is used in " +
"cartridge group: [cartridge-name] %s", "c4"), removedC1, false);
@@ -90,7 +90,7 @@ public class CartridgeGroupTest extends StratosTestServerManager {
RestConstants.CARTRIDGE_GROUPS_NAME);
assertEquals(String.format("Cartridge can be removed while it is used in " +
"cartridge group: [cartridge-name] %s",
- "c6"), removedC3, false); */
+ "c6"), removedC3, false);
boolean removed = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "G4",
RestConstants.CARTRIDGE_GROUPS_NAME);
@@ -104,17 +104,17 @@ public class CartridgeGroupTest extends StratosTestServerManager {
"[cartridge-group-name] %s",
"g4-g5-g6"), beanRemoved, null);
- boolean removedC1 = restClient.removeEntity(RestConstants.CARTRIDGES, "c4",
+ removedC1 = restClient.removeEntity(RestConstants.CARTRIDGES, "c4",
RestConstants.CARTRIDGE_GROUPS_NAME);
assertEquals(String.format("Cartridge can not be removed : [cartridge-name] %s",
"c4"), removedC1, true);
- boolean removedC2 = restClient.removeEntity(RestConstants.CARTRIDGES, "c5",
+ removedC2 = restClient.removeEntity(RestConstants.CARTRIDGES, "c5",
RestConstants.CARTRIDGE_GROUPS_NAME);
assertEquals(String.format("Cartridge can not be removed : [cartridge-name] %s",
"c5"), removedC2, true);
- boolean removedC3 = restClient.removeEntity(RestConstants.CARTRIDGES, "c6",
+ removedC3 = restClient.removeEntity(RestConstants.CARTRIDGES, "c6",
RestConstants.CARTRIDGE_GROUPS_NAME);
assertEquals(String.format("Cartridge can not be removed : [cartridge-name] %s",
"c6"), removedC3, true);