Merge "Fix sdc-tosca version" into casablanca 1.3.4
authorSeshu Kumar M <seshu.kumar.m@huawei.com>
Tue, 27 Nov 2018 01:59:44 +0000 (01:59 +0000)
committerGerrit Code Review <gerrit@onap.org>
Tue, 27 Nov 2018 01:59:44 +0000 (01:59 +0000)
adapters/mso-catalog-db-adapter/src/main/resources/db/migration/V4.19__RenameCustomToNoValidate.sql [new file with mode: 0644]
adapters/mso-catalog-db-adapter/src/main/resources/db/migration/V4.20__SetActivitiesBBsToNoValidate.sql [new file with mode: 0644]
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/activity/ExecuteActivity.java
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/OrchestrationStatusValidator.java
bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/workflow/tasks/OrchestrationStatusValidatorUnitTest.java [new file with mode: 0644]
mso-catalog-db/src/main/java/org/onap/so/db/catalog/beans/OrchestrationStatusValidationDirective.java
mso-catalog-db/src/main/java/org/onap/so/db/catalog/beans/ResourceType.java
version.properties

diff --git a/adapters/mso-catalog-db-adapter/src/main/resources/db/migration/V4.19__RenameCustomToNoValidate.sql b/adapters/mso-catalog-db-adapter/src/main/resources/db/migration/V4.19__RenameCustomToNoValidate.sql
new file mode 100644 (file)
index 0000000..bded179
--- /dev/null
@@ -0,0 +1,2 @@
+update building_block_detail set RESOURCE_TYPE = "NO_VALIDATE" where RESOURCE_TYPE = "CUSTOM";
+update orchestration_status_state_transition_directive set RESOURCE_TYPE = "NO_VALIDATE" where RESOURCE_TYPE = "CUSTOM";
\ No newline at end of file
diff --git a/adapters/mso-catalog-db-adapter/src/main/resources/db/migration/V4.20__SetActivitiesBBsToNoValidate.sql b/adapters/mso-catalog-db-adapter/src/main/resources/db/migration/V4.20__SetActivitiesBBsToNoValidate.sql
new file mode 100644 (file)
index 0000000..9f51ed1
--- /dev/null
@@ -0,0 +1,13 @@
+USE catalogdb;
+
+INSERT INTO building_block_detail (BUILDING_BLOCK_NAME, RESOURCE_TYPE, TARGET_ACTION)
+VALUES
+('FlowCompleteActivity', 'NO_VALIDATE', 'CUSTOM'),
+('VNFHealthCheckActivity', 'NO_VALIDATE', 'CUSTOM'),
+('VNFQuiesceTrafficActivity', 'NO_VALIDATE', 'CUSTOM'),
+('VNFResumeTrafficActivity', 'NO_VALIDATE', 'CUSTOM'),
+('VNFSetInMaintFlagActivity', 'NO_VALIDATE', 'CUSTOM'),
+('VNFUnsetInMaintFlagActivity', 'NO_VALIDATE', 'CUSTOM'),
+('VNFUpgradePostCheckActivity', 'NO_VALIDATE', 'CUSTOM'),
+('VNFUpgradePreCheckActivity', 'NO_VALIDATE', 'CUSTOM'),
+('VNFUpgradeSoftwareActivity', 'NO_VALIDATE', 'CUSTOM');
\ No newline at end of file
index 94eead2..acef0cb 100644 (file)
@@ -84,6 +84,7 @@ public class ExecuteActivity implements JavaDelegate {
                        variables.put("buildingBlock", executeBuildingBlock);
                        variables.put("mso-request-id", requestId);
                        variables.put("retryCount", 1); 
+                       variables.put("aLaCarte", true);        
                
                    ProcessInstanceWithVariables buildingBlockResult = runtimeService.createProcessInstanceByKey("ExecuteBuildingBlock").setVariables(variables).executeWithVariablesInReturn();
                        VariableMap variableMap = buildingBlockResult.getVariables();
index b0063c1..2065dfb 100644 (file)
@@ -105,6 +105,10 @@ public class OrchestrationStatusValidator {
                                org.onap.so.bpmn.servicedecomposition.bbobjects.Configuration configuration = extractPojosForBB.extractByKey(execution, ResourceKey.CONFIGURATION_ID, execution.getLookupMap().get(ResourceKey.CONFIGURATION_ID));
                                orchestrationStatus = configuration.getOrchestrationStatus();
                                break;
+                       case NO_VALIDATE:
+                               //short circuit and exit method
+                               execution.setVariable(ORCHESTRATION_STATUS_VALIDATION_RESULT, OrchestrationStatusValidationDirective.VALIDATION_SKIPPED);
+                               return;
                        default:
                                // can't currently get here, so not tested. Added in case enum is expanded without a change to this code
                                throw new OrchestrationStatusValidationException(String.format(UNKNOWN_RESOURCE_TYPE, buildingBlockFlowName, buildingBlockDetail.getResourceType(), buildingBlockDetail.getTargetAction()));
diff --git a/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/workflow/tasks/OrchestrationStatusValidatorUnitTest.java b/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/workflow/tasks/OrchestrationStatusValidatorUnitTest.java
new file mode 100644 (file)
index 0000000..4ace272
--- /dev/null
@@ -0,0 +1,45 @@
+package org.onap.so.bpmn.infrastructure.workflow.tasks;
+
+import static org.hamcrest.CoreMatchers.equalTo;
+import static org.junit.Assert.assertThat;
+import static org.mockito.Mockito.when;
+
+import org.camunda.bpm.extension.mockito.delegate.DelegateExecutionFake;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.runners.MockitoJUnitRunner;
+import org.onap.so.bpmn.common.BuildingBlockExecution;
+import org.onap.so.bpmn.common.DelegateExecutionImpl;
+import org.onap.so.db.catalog.beans.BuildingBlockDetail;
+import org.onap.so.db.catalog.beans.OrchestrationAction;
+import org.onap.so.db.catalog.beans.OrchestrationStatusValidationDirective;
+import org.onap.so.db.catalog.beans.ResourceType;
+import org.onap.so.db.catalog.client.CatalogDbClient;
+
+@RunWith(MockitoJUnitRunner.class)
+public class OrchestrationStatusValidatorUnitTest {
+
+       @Mock
+       private CatalogDbClient catalogDbClient;
+       
+       @InjectMocks
+       private OrchestrationStatusValidator validator;
+       @Test
+       public void skipValidationTest() {
+               BuildingBlockDetail bbDetail = new BuildingBlockDetail();
+               bbDetail.setBuildingBlockName("customBB");
+               bbDetail.setResourceType(ResourceType.NO_VALIDATE);
+               bbDetail.setTargetAction(OrchestrationAction.CUSTOM);
+               when(catalogDbClient.getBuildingBlockDetail("customBB")).thenReturn(bbDetail);
+               BuildingBlockExecution execution = new DelegateExecutionImpl(new DelegateExecutionFake());
+               execution.setVariable("flowToBeCalled", "customBB");
+               execution.setVariable("aLaCarte", false);
+               validator.validateOrchestrationStatus(execution);
+               
+               
+               assertThat(execution.getVariable("orchestrationStatusValidationResult"), equalTo(OrchestrationStatusValidationDirective.VALIDATION_SKIPPED));
+       }
+       
+}
index 544e1cb..f92aadf 100644 (file)
@@ -22,7 +22,7 @@ package org.onap.so.db.catalog.beans;
 
 //TODO find this file a new location?
 public enum OrchestrationStatusValidationDirective {
-       SILENT_SUCCESS("SilentSuccess"), CONTINUE("Continue"), FAIL("Fail");
+       SILENT_SUCCESS("SilentSuccess"), CONTINUE("Continue"), FAIL("Fail"), VALIDATION_SKIPPED("ValidationSkiPped");
 
        private final String name;
 
index 8e1d498..64eff56 100644 (file)
@@ -28,7 +28,7 @@ public enum ResourceType {
        NETWORK("Network"),
        NETWORK_COLLECTION("NetworkCollection"),
        CONFIGURATION("Configuration"),
-       CUSTOM("Custom");
+       NO_VALIDATE("NoValidate");
        
        private final String name;
        
index 78b140e..6456604 100644 (file)
@@ -4,7 +4,7 @@
 
 major=1
 minor=3
-patch=3
+patch=4
 
 base_version=${major}.${minor}.${patch}