Changed VF creation to new MSO scaleout API 43/66843/6
authorkoblosz <sandra.koblosz@nokia.com>
Sun, 16 Sep 2018 21:23:29 +0000 (23:23 +0200)
committerWojciech Sliwka <wojciech.sliwka@nokia.com>
Mon, 24 Sep 2018 10:18:37 +0000 (12:18 +0200)
Change-Id: Ie3cf99adc9a441d03bd31884ea46c94e9b62db74
Issue-ID: VID-248
Signed-off-by: Koblosz, Sandra (koblosz) <sandra.koblosz@nokia.com>
epsdk-app-onap/src/main/webapp/WEB-INF/conf/system.properties
epsdk-app-onap/src/main/webapp/WEB-INF/conf/system_template.properties
vid-app-common/src/main/java/org/onap/vid/mso/rest/RequestDetails.java
vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.controller.js
vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.html
vid-app-common/src/test/resources/WEB-INF/conf/system.properties
vid-app-common/src/test/resources/mso.properties
vid-app-common/src/test/resources/payload_jsons/activateOperationalEnvironmentsPayloadToMso.json
vid-app-common/src/test/resources/payload_jsons/deactivateOperationalEnvironmentsPayloadToMso.json

index dc9eb43..34ae55f 100755 (executable)
@@ -166,7 +166,7 @@ mso.restapi.svc.instance.deleteAndUnassign=/serviceInstantiation/v7/serviceInsta
 mso.restapi.vnf.instance=/serviceInstances/v6/<service_instance_id>/vnfs\r
 mso.restapi.vnf.changemanagement.instance=/serviceInstances/v6/<service_instance_id>/vnfs/<vnf_instance_id>/<request_type>\r
 mso.restapi.network.instance=/serviceInstances/v6/<service_instance_id>/networks\r
-mso.restapi.vf.module.instance=/serviceInstances/v6/<service_instance_id>/vnfs/<vnf_instance_id>/vfModules\r
+mso.restapi.vf.module.instance=/serviceInstantiation/v7/serviceInstances/<service_instance_id>/vnfs/<vnf_instance_id>/vfModules/scaleOut\r
 mso.restapi.volume.group.instance=/serviceInstances/v6/<service_instance_id>/vnfs/<vnf_instance_id>/volumeGroups\r
 mso.restapi.get.orc.req=/orchestrationRequests/v6\r
 mso.restapi.get.orc.reqs=/orchestrationRequests/v6?\r
index 5596de0..9445b73 100755 (executable)
@@ -109,7 +109,7 @@ mso.restapi.svc.instance.deleteAndUnassign=/serviceInstantiation/v7/serviceInsta
 mso.restapi.vnf.instance=/onap/so/infra/serviceInstances/v6/<service_instance_id>/vnfs\r
 mso.restapi.vnf.changemanagement.instance=/onap/so/infra/serviceInstances/v6/<service_instance_id>/vnfs/<vnf_instance_id>/<request_type>\r
 mso.restapi.network.instance=/onap/so/infra/serviceInstances/v6/<service_instance_id>/networks\r
-mso.restapi.vf.module.instance=/onap/so/infra/serviceInstances/v6/<service_instance_id>/vnfs/<vnf_instance_id>/vfModules\r
+mso.restapi.vf.module.instance=/onap/so/infra/serviceInstantiation/v7/serviceInstances/<service_instance_id>/vnfs/<vnf_instance_id>/vfModules/scaleOut\r
 mso.restapi.volume.group.instance=/onap/so/infra/serviceInstances/v6/<service_instance_id>/vnfs/<vnf_instance_id>/volumeGroups\r
 mso.restapi.get.orc.req=/onap/so/infra/orchestrationRequests/v6\r
 mso.restapi.get.orc.reqs=/onap/so/infra/orchestrationRequests/v6?\r
index df69148..9d198ad 100644 (file)
@@ -26,6 +26,7 @@ import org.apache.commons.lang.builder.HashCodeBuilder;
 import org.apache.commons.lang.builder.ToStringBuilder;
 import org.onap.vid.domain.mso.*;
 
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -41,7 +42,8 @@ import java.util.Map;
         "relatedModelList",
         "requestInfo",
         "subscriberInfo",
-        "requestParameters"
+        "requestParameters",
+        "configurationParameters"
 })
 public class RequestDetails{
 
@@ -71,6 +73,9 @@ public class RequestDetails{
     @JsonProperty("requestParameters")
     private RequestParameters requestParameters;
 
+    @JsonProperty("configurationParameters")
+    protected List<Map<String, String>> configurationParameters = new ArrayList<>();
+
     /** The additional properties. */
     @JsonIgnore
     private Map<String, Object> additionalProperties = new HashMap<String, Object>();
@@ -198,12 +203,31 @@ public class RequestDetails{
         this.additionalProperties.put(name, value);
     }
 
+    @JsonProperty("configurationParameters")
+    public List<Map<String, String>> getConfigurationParameters() {
+        return configurationParameters;
+    }
+
+    @JsonProperty("configurationParameters")
+    public void setConfigurationParameters(List<Map<String, String>> configurationParameters) {
+        this.configurationParameters = configurationParameters;
+    }
+
     /* (non-Javadoc)
      * @see org.onap.vid.domain.mso.RequestDetails#hashCode()
      */
     @Override
     public int hashCode() {
-        return new HashCodeBuilder().append(cloudConfiguration).append(modelInfo).append(relatedInstanceList).append(requestInfo).append(getRequestParameters()).append(subscriberInfo).append(additionalProperties).toHashCode();
+        return new HashCodeBuilder()
+                .append(cloudConfiguration)
+                .append(modelInfo)
+                .append(relatedInstanceList)
+                .append(requestInfo)
+                .append(getRequestParameters())
+                .append(subscriberInfo)
+                .append(additionalProperties)
+                .append(configurationParameters.hashCode())
+                .toHashCode();
     }
 
     /* (non-Javadoc)
@@ -214,11 +238,20 @@ public class RequestDetails{
         if (other == this) {
             return true;
         }
-        if ((other instanceof RequestDetails) == false) {
+        if (!(other instanceof RequestDetails)) {
             return false;
         }
         RequestDetails rhs = ((RequestDetails) other);
-        return new EqualsBuilder().append(cloudConfiguration, rhs.cloudConfiguration).append(modelInfo, rhs.modelInfo).append(relatedInstanceList, rhs.relatedInstanceList).append(requestInfo, rhs.requestInfo).append(getRequestParameters(), rhs.getRequestParameters()).append(subscriberInfo, rhs.subscriberInfo).append(additionalProperties, rhs.additionalProperties).isEquals();
+        return new EqualsBuilder()
+                .append(cloudConfiguration, rhs.cloudConfiguration)
+                .append(modelInfo, rhs.modelInfo)
+                .append(relatedInstanceList, rhs.relatedInstanceList)
+                .append(requestInfo, rhs.requestInfo)
+                .append(getRequestParameters(), rhs.getRequestParameters())
+                .append(subscriberInfo, rhs.subscriberInfo)
+                .append(additionalProperties, rhs.additionalProperties)
+                .append(configurationParameters, rhs.configurationParameters)
+                .isEquals();
     }
 
     public RequestParameters getRequestParameters() {
index c55092e..fca5a7c 100644 (file)
@@ -10,7 +10,7 @@
         vm.hasScheduler = !!VIDCONFIGURATION.SCHEDULER_PORTAL_URL;
         vm.configUpdatePatternError = "Invalid file type. Please select a file with a CSV extension.";
         vm.configUpdateContentError = "Invalid file structure.";
-        
+
         vm.wizardStep = 1;
         vm.nextStep = function(){
             vm.wizardStep++;
                        var result = {};
                        result.requestType = changeManagement.workflow;
                        var workflowType = changeManagement.workflow;
+                       var configurationParameters = changeManagement.configurationParameters;
                        result.requestDetails = [];
                        _.forEach(changeManagement.vnfNames, function (vnf) {
-                               
+
                                try{
                                var requestInfoData ={};
                                var requestParametersData ={};
                     return !item.scale;
                 });
                                if (vnf.availableVersions && vnf.availableVersions.length!=0){
-                                       
+
                                        requestInfoData ={
                                                source: vnf.availableVersions[0].requestInfo.source,
                                                suppressRollback: vnf.availableVersions[0].requestInfo.suppressRollback,
                                                requestorId: vnf.availableVersions[0].requestInfo.requestorId
                                        }
-                                       
+
                                        if(workflowType=='Update'){
                                                requestParametersData = {
                                                        usePreload: vnf.availableVersions[0].requestParameters.usePreload
                         cloudConfiguration: vnf.cloudConfiguration,
                         requestInfo: requestInfoData,
                         relatedInstanceList: [],
-                        requestParameters:requestParametersData
+                        requestParameters:requestParametersData,
+                        configurationParameters: JSON.parse(configurationParameters)
                     };
                     requestInfoData.instanceName = vnf.name + "_" + (moduleToScale.currentCount + 1);
                 }else{
                         cloudConfiguration: vnf.cloudConfiguration,
                         requestInfo: requestInfoData,
                         relatedInstanceList: [],
-                        requestParameters:requestParametersData
+                        requestParameters:requestParametersData,
+                        configurationParameters: []
                     };
                 }
 
                        });
                        return JSON.stringify(result);
                }
-               
         vm.openModal = function () {
             if(vm.hasScheduler) { //scheduling supported
                                $scope.widgetParameter = ""; // needed by the scheduler?
                                        widgetData: vm.changeManagement,
                                        widgetParameter: $scope.widgetParameter
                                };
-                       
+
                                window.parent.postMessage(data, VIDCONFIGURATION.SCHEDULER_PORTAL_URL);
                        } else {
                                //no scheduling support
                     if(vm.changeManagement.workflow==="VNF Scale Out") {
                         dataToSo = JSON.parse(dataToSo);
                         dataToSo = {requestDetails: dataToSo.requestDetails[0]};
-                        changeManagementService.postChangeManagementScaleOutNow(dataToSo, vm.changeManagement.vnfNames[0]["service-instance-node"][0].properties["service-instance-id"], vm.changeManagement.vnfNames[0].id);
+                        changeManagementService.postChangeManagementScaleOutNow(dataToSo,
+                            vm.changeManagement.vnfNames[0]["service-instance-node"][0].properties["service-instance-id"],
+                            vm.changeManagement.vnfNames[0].id);
                     }else{
                         //TODO: foreach
                         var vnfName = vm.changeManagement.vnfNames[0].name;
         vm.isConfigUpdate = function () {
             return vm.changeManagement.workflow === COMPONENT.WORKFLOWS.vnfConfigUpdate;
         }
-               
+
         vm.isScaleOut = function () {
             return vm.changeManagement.workflow === COMPONENT.WORKFLOWS.vnfScaleOut;
         }
index ec1d4cd..21f9c5d 100644 (file)
                 <option value="" disabled>Select workflow</option>
             </select>
         </div>
+        <div class="form-group" ng-if="vm.isScaleOut()">
+            <label class="control-label">Configuration Parameters</label>
+            <input type="text" name="configurationParameters" ng-model="vm.changeManagement.configurationParameters" id="configuration-parameters" required>
+        </div>
         <div class="form-group" ng-if="vm.isConfigUpdate()">
             <label class="control-label">Attach configuration file</label>
             <div class="file-wrapper">
             <button ng-if="vm.isScaleOut() && vm.wizardStep === 1" ng-click="vm.nextStep();" type="button" id="next" name="next" class="btn btn-primary" data-ng-disabled="newChangeManagement.$invalid">Next</button>
         </div>
     </div>
-</form>
+</form>
\ No newline at end of file
index 689f55e..bf0f826 100644 (file)
@@ -154,7 +154,7 @@ mso.restapi.svc.instance=/serviceInstances/v5
 mso.restapi.vnf.instance=/serviceInstances/v5/<service_instance_id>/vnfs
 mso.restapi.vnf.changemanagement.instance=/serviceInstances/v5/<service_instance_id>/vnfs/<vnf_instance_id>/<request_type>
 mso.restapi.network.instance=/serviceInstances/v5/<service_instance_id>/networks
-mso.restapi.vf.module.instance=/serviceInstances/v5/<service_instance_id>/vnfs/<vnf_instance_id>/vfModules
+mso.restapi.vf.module.instance=/serviceInstantiation/v7/<service_instance_id>/vnfs/<vnf_instance_id>/vfModules/scaleOut
 mso.restapi.volume.group.instance=/serviceInstances/v5/<service_instance_id>/vnfs/<vnf_instance_id>/volumeGroups
 mso.restapi.get.orc.req=/orchestrationRequests/v5
 mso.restapi.get.orc.reqs=/orchestrationRequests/v5?
index fcd20bd..d021ffd 100644 (file)
@@ -6,7 +6,7 @@ mso.password.x=OBF:1ghz1kfx1j1w1m7w1i271e8q1eas1hzj1m4i1iyy1kch1gdz
 mso.restapi.svc.instance=/serviceInstances/v3
 mso.restapi.vnf.instance=/serviceInstances/v3/<service_instance_id>/vnfs
 mso.restapi.network.instance=/serviceInstances/v3/<service_instance_id>/networks
-mso.restapi.vf.module.instance=/serviceInstances/v3/<service_instance_id>/vnfs/<vnf_instance_id>/vfModules
+mso.restapi.vf.module.instance=/serviceInstantiation/v7/<service_instance_id>/vnfs/<vnf_instance_id>/vfModules/scaleOut
 mso.restapi.volume.group.instance=/serviceInstances/v3/<service_instance_id>/vnfs/<vnf_instance_id>/volumeGroups
 mso.restapi.configurations=/serviceInstances/v6/<service_instance_id>/configurations
 mso.restapi.get.orc.req=/orchestrationRequests/v3
index 400a55f..7547410 100644 (file)
@@ -5,6 +5,7 @@
       "source": "VID",
       "requestorId": "<userId>"
     },
+    "configurationParameters" : [ ],
     "relatedInstanceList": [
       {
         "relatedInstance": {
index b9ff151..c50a66c 100644 (file)
@@ -5,6 +5,7 @@
       "source": "VID",
       "requestorId": "<userId>"
     },
+    "configurationParameters" : [ ],
     "requestParameters": {
       "operationalEnvironmentType": "VNF"
     }