Merge "Add vfc-nslcm log integration config"
authorYan Yang <yangyanyj@chinamobile.com>
Tue, 27 Mar 2018 06:12:47 +0000 (06:12 +0000)
committerGerrit Code Review <gerrit@onap.org>
Tue, 27 Mar 2018 06:12:47 +0000 (06:12 +0000)
docker/Dockerfile
lcm/ns/ns_manual_scale.py
lcm/pub/tests/test_scaleaspect.py
lcm/pub/utils/scaleaspect.py
lcm/v2/tests.py
lcm/v2/views.py

index 28b259c..ec32513 100755 (executable)
@@ -30,7 +30,7 @@ ADD . /service
 WORKDIR /service
 
 # get binary zip from nexus - vfc-nfvo-lcm
-RUN wget -q -O vfc-nfvo-lcm.zip 'https://nexus.onap.org/service/local/artifact/maven/redirect?r=staging&g=org.onap.vfc.nfvo.lcm&a=vfc-nfvo-lcm&v=LATEST&e=zip' && \
+RUN wget -q -O vfc-nfvo-lcm.zip 'https://nexus.onap.org/service/local/artifact/maven/redirect?r=snapshots&g=org.onap.vfc.nfvo.lcm&a=vfc-nfvo-lcm&v=LATEST&e=zip' && \
     unzip vfc-nfvo-lcm.zip && \
     rm -rf vfc-nfvo-lcm.zip
 
index 8ecde77..71897ae 100644 (file)
@@ -55,11 +55,11 @@ class NSManualScaleService(threading.Thread):
     def do_biz(self):
         self.update_job(1, desc='ns scale start')
         self.update_ns_status(NS_INST_STATUS.SCALING)
-        self.get_and_check_params()
+        self.check_and_set_params()
         self.do_vnfs_scale()
         self.update_job(100, desc='ns scale success')
 
-    def get_and_check_params(self):
+    def check_and_set_params(self):
         self.scale_type = ignore_case_get(self.request_data, 'scaleType')
         if not self.scale_type or self.scale_type != SCALE_TYPE[0]:
             logger.error(
index ed69cbf..38d4ad2 100644 (file)
@@ -18,7 +18,7 @@ from lcm.pub.utils.scaleaspect import get_nsdId
 from lcm.pub.utils.scaleaspect import get_scale_vnf_data_from_json
 from lcm.pub.utils.scaleaspect import get_scale_vnf_data_info_list
 from lcm.pub.utils.scaleaspect import set_scacle_vnf_instance_id
-from lcm.pub.utils.scaleaspect import get_and_check_params
+from lcm.pub.utils.scaleaspect import check_and_set_params
 from lcm.pub.utils.scaleaspect import set_scaleVnfData_type
 from lcm.pub.database.models import NfInstModel
 from lcm.pub.database.models import NSInstModel
@@ -237,7 +237,7 @@ class TestScaleAspect(TestCase):
         NfInstModel().clean()
 
     def test_get_and_check_params(self):
-        aspect, numberOfSteps, scale_type = get_and_check_params(
+        aspect, numberOfSteps, scale_type = check_and_set_params(
             self.scaleNsData, "1")
         self.assertEqual(aspect, self.ns_scale_aspect)
         self.assertEqual(numberOfSteps, self.ns_scale_steps)
index 81fdfd8..cf78092 100644 (file)
@@ -133,7 +133,7 @@ def get_nsdId(ns_instanceId):
     return None
 
 
-def get_and_check_params(scaleNsData, ns_InstanceId):
+def check_and_set_params(scaleNsData, ns_InstanceId):
     if scaleNsData is None:
         raise Exception("Error! scaleNsData in the request is Empty!")
 
@@ -155,7 +155,7 @@ def get_scale_vnf_data(scaleNsData, ns_InstanceId):
                 os.path.abspath(__file__))))
     filename = curdir_path + "/ns/data/scalemapping.json"
     logger.debug("filename = %s" % filename)
-    aspect, numberOfSteps, scale_type = get_and_check_params(
+    aspect, numberOfSteps, scale_type = check_and_set_params(
         scaleNsData, ns_InstanceId)
     return get_scale_vnf_data_list(
         filename,
@@ -174,7 +174,7 @@ def get_scale_vnf_data_info_list(scaleNsData, ns_InstanceId):
     scalingmap_json = catalog.get_scalingmap_json_package(ns_InstanceId)
 
     # Gets and checks the values of parameters.
-    aspect, numberOfSteps, scale_type = get_and_check_params(
+    aspect, numberOfSteps, scale_type = check_and_set_params(
         scaleNsData, ns_InstanceId)
 
     # Firstly, gets the scaling vnf data info list from the scaling map json data.
index fc4505a..406edad 100644 (file)
@@ -98,3 +98,120 @@ class VnfGrantViewTest(unittest.TestCase):
     def test_get_notify_vnf_normal(self):
         response = self.client.get("/api/nslcm/v2/ns/1/vnfs/1/Notify")
         self.assertEqual(status.HTTP_204_NO_CONTENT, response.status_code, response.content)
+
+    def test_notify_vnf_normal(self):
+        data = {
+            "id": "string",
+            "notificationType": "string",
+            "subscriptionId": "string",
+            "timeStamp": "string",
+            "notificationStatus": "START",
+            "operationState": "STARTING",
+            "vnfInstanceId": "string",
+            "operation": "INSTANTIATE",
+            "isAutomaticInvocation": True,
+            "vnfLcmOpOccId": "string",
+            "affectedVnfcs": [{
+                "vnfcInstanceId": "string",
+                "vduId": "string",
+                "changeType": "added",
+                "vimId": "string",
+                "vmId": "string",
+                "vmName": "string"
+            }],
+            "affectedVirtualLinks": [{
+                "vlInstanceId": "string",
+                "vldId": "string",
+                "changeType": "added",
+                "networkResource": {
+                    "resourceType": "network",
+                    "resourceId": "string",
+                    "resourceName": "string"
+                }
+            }],
+            "affectedVirtualStorages": [{}],
+            "changedInfo": {
+                "vnfInstanceName": "string",
+                "vnfInstanceDescription": "string",
+                "vnfConfigurableProperties": {
+                    "additionalProp1": "string",
+                    "additionalProp2": "string",
+                    "additionalProp3": "string"
+                },
+                "metadata": {
+                    "additionalProp1": "string",
+                    "additionalProp2": "string",
+                    "additionalProp3": "string"
+                },
+                "extensions": {
+                    "additionalProp1": "string",
+                    "additionalProp2": "string",
+                    "additionalProp3": "string"
+                },
+                "vimConnectionInfo": [{
+                    "id": "string",
+                    "vimId": "string",
+                    "vimType": "string",
+                    "interfaceInfo": {
+                        "additionalProp1": "string",
+                        "additionalProp2": "string",
+                        "additionalProp3": "string"
+                    },
+                    "accessInfo": {
+                        "additionalProp1": "string",
+                        "additionalProp2": "string",
+                        "additionalProp3": "string"
+                    },
+                    "extra": {
+                        "additionalProp1": "string",
+                        "additionalProp2": "string",
+                        "additionalProp3": "string"
+                    }
+                }],
+                "vnfPkgId": "string",
+                "vnfdId": "string",
+                "vnfProvider": "string",
+                "vnfProductName": "string",
+                "vnfSoftwareVersion": "string",
+                "vnfdVersion": "string"
+            },
+            "changedExtConnectivity": [{
+                "id": "string",
+                "resourceHandle": {
+                    "vimConnectionId": "string",
+                    "resourceProviderId": "string",
+                    "resourceId": "string",
+                    "vimLevelResourceType": "string"
+                },
+                "extLinkPorts": [{
+                    "id": "string",
+                    "resourceHandle": {
+                        "vimConnectionId": "string",
+                        "resourceProviderId": "string",
+                        "resourceId": "string",
+                        "vimLevelResourceType": "string"
+                    },
+                    "cpInstanceId": "string"
+                }]
+            }],
+            "error": {
+                "type": "string",
+                "title": "string",
+                "status": 0,
+                "detail": "string",
+                "instance": "string"
+            },
+            "_links": {
+                "vnfInstance": {
+                    "href": "string"
+                },
+                "subscription": {
+                    "href": "string"
+                },
+                "vnfLcmOpOcc": {
+                    "href": "string"
+                }
+            }
+        }
+        response = self.client.post("/api/nslcm/v2/ns/1/vnfs/2/Notify", data=data, format='json')
+        self.assertEqual(status.HTTP_204_NO_CONTENT, response.status_code, response.content)
index 23c59a4..e216022 100644 (file)
@@ -73,7 +73,6 @@ class VnfNotifyView(APIView):
         return Response(data={}, status=status.HTTP_204_NO_CONTENT)
 
     @swagger_auto_schema(
-        request_body=None,
         responses={
             status.HTTP_204_NO_CONTENT: "The notification endpoint was tested successfully.",
             status.HTTP_500_INTERNAL_SERVER_ERROR: "Inner error"