1 # Copyright 2016-2017 ZTE Corporation.
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
7 # http://www.apache.org/licenses/LICENSE-2.0
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
17 from django.test import Client
18 from django.test import TestCase
19 from rest_framework import status
20 from driver.pub.utils import restcall
23 class InterfacesTest(TestCase):
25 self.client = Client()
30 @mock.patch.object(restcall, 'call_req')
31 def test_instantiate_vnf_001(self, mock_call_req):
35 "name": "ZTE_VNFM_237_62",
36 "vimId": "516cee95-e8ca-4d26-9268-38e343c2e31e",
37 "url": "http://192.168.237.165:2324",
40 "vnfmId": "b0797c9b-3da9-459c-b25c-3813e9d8fd70",
42 "type": "ztevnfmdriver",
43 "createTime": "2016-10-31 11:08:39",
49 "vnfInstanceId": "59b79a9f-9e37-4f6c-acaf-5f41d9cb3f76",
50 "vnfInstanceName": "VFW_59b79a9f-9e37-4f6c-acaf-5f41d9cb3f76"
53 "vnfInstanceId": "6c5e4bd3-e8a6-42d8-a7a4-53a8ef74c6ac",
54 "vnfInstanceName": "VFW_6c5e4bd3-e8a6-42d8-a7a4-53a8ef74c6ac"
57 "vnfInstanceId": "930de5c9-8043-41df-ace8-ede2262a3713",
58 "vnfInstanceName": "VFW_930de5c9-8043-41df-ace8-ede2262a3713"
61 "vnfInstanceId": "c677a305-a7bd-4baf-9eee-c383c588bb3c",
62 "vnfInstanceName": "VFW_c677a305-a7bd-4baf-9eee-c383c588bb3c"
65 "vnfInstanceId": "e708e5c5-bdf4-436a-b928-826887806d82",
66 "vnfInstanceName": "VFW_e708e5c5-bdf4-436a-b928-826887806d82"
69 "csarId": "d852e1be-0aac-48f1-b1a4-cd825f6cdf9a",
74 "vimId": "516cee95-e8ca-4d26-9268-38e343c2e31e",
75 "fileName": "VFW_IMAGE_VCPE_ZTE",
77 "imageId": "d2b73154-0414-466a-a1e6-51b9461b753a",
82 "usageState": "NotInUse",
83 "onBoardState": "onBoarded",
87 "vnfdProvider": "zte",
88 "vnfdId": "vcpe_vfw_zte_1_0",
89 "deletionPending": False,
92 "vnfdVersion": "1.0.0",
93 "processState": "normal",
94 "modifyTime": "2016-10-3116: 21: 32",
95 "downloadUri": "http: //192.168.233.226: 80/",
96 "operationalState": "Disabled",
97 "createTime": "2016-10-3116: 21: 11",
103 "usageState": "NotInUse",
104 "onBoardState": "onBoarded",
108 "vnfdModel": json.dumps({"metadata": {"name": "ZTE-MME-FIX-VL"}})
110 "modifyTime": "2016-10-31 16:21:32",
111 "vnfdProvider": "zte",
112 "vnfdId": "vcpe_vfw_zte_1_0",
113 "deletionPending": False,
116 "vnfdVersion": "1.0.0",
117 "processState": "normal",
119 "operationalState": "Disabled",
120 "createTime": "2016-10-31 16:21:11",
121 "downloadUri": "http://192.168.233.226:80/files/catalog-http/NFAR/ZTE/VFW/v1.0/VFW.csar"
125 "vnfInstanceId": "8",
126 "jobid": "NF-CREATE-8-b384535c-9f45-11e6-8749-fa163e91c2f9"
128 ret = [0, json.JSONEncoder().encode(inst_response), '200']
129 r1 = [0, json.JSONEncoder().encode(vnfm_info), "200"]
130 r2 = [0, json.JSONEncoder().encode(vnfd_info), "200"]
131 r3 = [0, json.JSONEncoder().encode(packageInfo), "200"]
132 mock_call_req.side_effect = [r1, r2, r3, ret]
135 'vnfInstanceName': 'VFW_f88c0cb7-512a-44c4-bd09-891663f19367',
136 'vnfPackageId': 'd852e1be-0aac-48f1-b1a4-cd825f6cdf9a',
137 'vnfDescriptorId': 'vcpe_vfw_zte_1_0',
139 'sdncontroller': 'e4d637f1-a4ec-4c59-8b20-4e8ab34daba9',
140 'NatIpRange': '192.167.0.10-192.168.0.20',
141 'm6000_mng_ip': '192.168.11.11',
142 'externalPluginManageNetworkName': 'plugin_net_2014',
143 'location': '516cee95-e8ca-4d26-9268-38e343c2e31e',
144 'externalManageNetworkName': 'mng_net_2017',
145 'sfc_data_network': 'sfc_data_net_2016',
146 'externalDataNetworkName': 'Flow_out_net',
151 response = self.client.post(
152 "/api/ztevnfmdriver/v1/ztevnfmid/vnfs",
153 data=json.dumps(req_data),
154 content_type="application/json")
155 self.assertEqual(status.HTTP_200_OK, response.status_code)
157 "jobId": "NF-CREATE-8-b384535c-9f45-11e6-8749-fa163e91c2f9",
158 "vnfInstanceId": "8"}
159 self.assertEqual(expect_resp_data, response.data)
161 @mock.patch.object(restcall, 'call_req')
162 def test_terminate_vnf__002(self, mock_call_req):
163 r1 = [0, json.JSONEncoder().encode({
164 "vnfmId": "19ecbb3a-3242-4fa3-9926-8dfb7ddc29ee",
170 "description": "vnfm",
171 "certificateUrl": "",
172 "url": "http://10.74.44.11",
175 "createTime": "2016-07-06 15:33:18"}), "200"]
177 r2 = [0, json.JSONEncoder().encode(
178 {"vnfInstanceId": "1", "jobId": "1"}), "200"]
179 mock_call_req.side_effect = [r1, r2]
181 response = self.client.post(
182 "/api/ztevnfmdriver/v1/ztevnfmid/vnfs/vbras_innstance_id/terminate")
184 self.assertEqual(status.HTTP_200_OK, response.status_code)
185 expect_resp_data = {"jobId": "1", "vnfInstanceId": "1"}
186 self.assertEqual(expect_resp_data, response.data)
188 @mock.patch.object(restcall, 'call_req')
189 def test_query_vnf_003(self, mock_call_req):
190 r1 = [0, json.JSONEncoder().encode({
191 "vnfmId": "19ecbb3a-3242-4fa3-9926-8dfb7ddc29ee",
197 "description": "vnfm",
198 "certificateUrl": "",
199 "url": "http://10.74.44.11",
202 "createTime": "2016-07-06 15:33:18"}), "200"]
204 r2 = [0, json.JSONEncoder().encode({"vnfinstancestatus": "1"}), "200"]
205 mock_call_req.side_effect = [r1, r2]
207 response = self.client.get(
208 "/api/ztevnfmdriver/v1/ztevnfmid/vnfs/vbras_innstance_id")
210 self.assertEqual(status.HTTP_200_OK, response.status_code)
212 expect_resp_data = {"vnfInfo": {"vnfStatus": "1"}}
213 self.assertEqual(expect_resp_data, response.data)
215 @mock.patch.object(restcall, 'call_req')
216 def test_operation_status_004(self, mock_call_req):
220 "name": "ZTE_VNFM_237_62",
221 "vimId": "516cee95-e8ca-4d26-9268-38e343c2e31e",
222 "url": "http://192.168.237.165:2324",
223 "certificateUrl": "",
225 "vnfmId": "b0797c9b-3da9-459c-b25c-3813e9d8fd70",
227 "type": "ztevnfmdriver",
228 "createTime": "2016-10-31 11:08:39",
232 "responseDescriptor": {
233 "status": "processing",
234 "responseHistoryList": [
240 "statusDescription": "'JsonParser' object has no attribute 'parser_info'"}],
244 "statusDescription": "Create nf apply resource failed"},
245 "jobId": "NF-CREATE-11-ec6c2f2a-9f48-11e6-9405-fa163e91c2f9"}
246 r1 = [0, json.JSONEncoder().encode(vnfm_info), '200']
247 r2 = [0, json.JSONEncoder().encode(resp_body), '200']
248 mock_call_req.side_effect = [r1, r2]
249 response = self.client.get(
250 "/api/ztevnfmdriver/v1/{vnfmid}/jobs/{jobid}?responseId={responseId}".format(
251 vnfmid=vnfm_info["vnfmId"],
252 jobid=resp_body["jobId"],
253 responseId=resp_body["responseDescriptor"]["responseId"]))
255 self.assertEqual(status.HTTP_200_OK, response.status_code)
257 self.assertDictEqual(resp_body, response.data)
259 @mock.patch.object(restcall, 'call_req')
260 def test_grantvnf_005(self, mock_call_req):
266 "vimid": "516cee95-e8ca-4d26-9268-38e343c2e31e"
269 ret = [0, json.JSONEncoder().encode(grant_data), '201']
272 "vnfmid": "13232222",
273 "nfvoid": "03212234",
278 "tenant": " tenant1",
279 "vnfistanceid": "1234",
280 "operationright": "0",
284 "VMFlavor": "VDU_S_CDB_51",
289 "VMFlavor": "VDU_M_SLB_42",
296 mock_call_req.return_value = ret
297 response = self.client.put(
298 "/api/ztevnfmdriver/v1/resource/grant",
299 data=json.dumps(req_data),
300 content_type='application/json')
302 self.assertEqual(status.HTTP_201_CREATED, response.status_code)
305 "vimid": "516cee95-e8ca-4d26-9268-38e343c2e31e",
307 self.assertDictEqual(expect_resp_data, response.data)
309 @mock.patch.object(restcall, 'call_req')
310 def test_notify_006(self, mock_call_req):
311 r1 = [0, json.JSONEncoder().encode(
314 "vimInfoId": "111111",
319 "protocolType": "None"},
323 "password": "password"},
324 "interfaceEndpoint": "http://127.0.0.1/api/v1"},
327 "resourceDefinitionId": "xxxxx",
330 "removeResource": "",
332 "computeResourceFlavour": {
335 "vimFlavourId": "12"},
340 "additionalParam": ""
343 mock_call_req.side_effect = [r1]
344 response = self.client.post(
345 "/api/ztevnfmdriver/v1/vnfs/lifecyclechangesnotification",
346 data=json.dumps(notify_req_data),
347 content_type='application/json')
349 self.assertEqual(status.HTTP_200_OK, response.status_code)
351 expect_resp_data = None
352 self.assertEqual(expect_resp_data, response.data)
354 @mock.patch.object(restcall, 'call_req')
355 def test_scale(self, mock_call_req):
358 "vnfInstanceId": "101"
363 "name": "ZTE_VNFM_237_62",
364 "vimId": "516cee95-e8ca-4d26-9268-38e343c2e31e",
365 "url": "http://192.168.237.165:2324",
366 "certificateUrl": "",
368 "vnfmId": "b0797c9b-3da9-459c-b25c-3813e9d8fd70",
370 "type": "ztevnfmdriver",
371 "createTime": "2016-10-31 11:08:39",
375 ret = [0, json.JSONEncoder().encode(job_info), "202"]
376 ret_vnfm = [0, json.JSONEncoder().encode(vnfm_info), "200"]
377 mock_call_req.side_effect = [ret_vnfm, ret]
382 "flavour_id": "flavour1",
387 "instances_minimum_number": 1,
388 "instances_maximum_number": 4,
389 "local_affinity_antiaffinity_rule": [
391 "affinity_antiaffinity": "affinity",
401 "name": "demo_aspect",
402 "description": "demo_aspect",
403 "associated_group": "elementGroup1",
411 "group_id": "elementGroup1",
414 "name": "elementGroup1"
426 "aspectId": "demo_aspect",
427 "numberOfSteps": "3",
429 "vnfdModel": vnfd_info
433 response = self.client.post(
434 "/api/ztevnfmdriver/v1/100/vnfs/101/scale",
435 data=json.dumps(scale_vnf_data),
436 content_type='application/json')
437 self.assertEqual(status.HTTP_202_ACCEPTED, response.status_code)
438 self.assertDictEqual(job_info, response.data)
440 @mock.patch.object(restcall, 'call_req')
441 def test_heal(self, mock_call_req):
444 "vnfInstanceId": "10144445666"
449 "name": "ZTE_VNFM_237_62",
450 "vimId": "516cee95-e8ca-4d26-9268-38e343c2e31e",
451 "url": "http://192.168.237.165:2324",
452 "certificateUrl": "",
454 "vnfmId": "b0797c9b-3da9-459c-b25c-3813e9d8fd70",
456 "type": "ztevnfmdriver",
457 "createTime": "2016-10-31 11:08:39",
461 ret = [0, json.JSONEncoder().encode(job_info), "202"]
462 ret_vnfm = [0, json.JSONEncoder().encode(vnfm_info), "200"]
463 mock_call_req.side_effect = [ret_vnfm, ret]
472 'vmid': '804cca71-9ae9-4511-8e30-d1387718caff',
473 'changtype': 'changed',
475 'vmname': 'ZTE_SSS_111_PP_2_L'
477 'lifecycleoperation': 'operate',
481 response = self.client.post("/api/ztevnfmdriver/v1/200/vnfs/201/heal", data=json.dumps(heal_vnf_data),
482 content_type='application/json')
484 self.assertEqual(status.HTTP_202_ACCEPTED, response.status_code)
485 self.assertDictEqual(job_info, response.data)
488 notify_req_data = {"vnfinstanceid": "1",
490 "extension": {"openo_notification": {"status": "finished",
491 "affectedService": [],
492 "affectedVnfc": [{"changeType": "added",
493 "computeResource": {"resourceId": "e8ccc55a-3ebb-4e46-8260-dc4a1646ef4f",
494 "tenant": "ZTE_ONAP_PRO",
495 "vimId": "vmware_vio",
496 "resourceName": "ZTE_xGW_39_CDB_1"},
497 "storageResource": [],
498 "vnfcInstanceId": "17502154-c5bf-11e7-904d-fa163eee1ffe",
500 "vduId": "VDU_S_CDB_51"},
501 {"changeType": "added",
502 "computeResource": {"resourceId": "a9dd6a73-76ee-4d07-9554-08f14c17261f",
503 "tenant": "ZTE_ONAP_PRO",
504 "vimId": "vmware_vio",
505 "resourceName": "ZTE_xGW_39_SLB_1"},
506 "storageResource": [],
507 "vnfcInstanceId": "1750d540-c5bf-11e7-904d-fa163eee1ffe",
509 "vduId": "VDU_M_SLB_42"}],
510 "nfvoInstanceId": "3",
511 "affectedVirtualLink": [{"changeType": "added",
512 "virtualLinkInstanceId": "1753b60c-c5bf-11e7-904d-fa163eee1ffe",
513 "networkResource": {"resourceId": "c55e0788-3683-48a1-b88a-a0cb5e05bd44",
515 "vimId": "vmware_vio",
516 "resourceName": "ZTE_VGW_MGT_NET39"},
517 "virtualLinkDescId": "ZTE_VGW_MGT_NET39_virtualLink",
518 "tenant": "ZTE_ONAP_PRO",
519 "subnetworkResource": {"resourceId": "33c8a03d-00c9-4c57-a348-26dae462b473",
521 "vimId": "vmware_vio",
522 "resourceName": "ZTE_VGW_MGT_NET39_s"}},
523 {"changeType": "added",
524 "virtualLinkInstanceId": "175472a4-c5bf-11e7-904d-fa163eee1ffe",
525 "networkResource": {"resourceId": "2d22b6e4-340b-45a8-8757-5206aa056b92",
527 "vimId": "vmware_vio",
528 "resourceName": "ZTE_VGW_SERVICE_NET39"},
529 "virtualLinkDescId": "ZTE_VGW_SERVICE_NET39_virtualLink",
530 "tenant": "ZTE_ONAP_PRO",
531 "subnetworkResource": {"resourceId": "2ea2acc0-a4ed-44f8-9d31-9cdc9e3ebe62",
533 "vimId": "vmware_vio",
534 "resourceName": "ZTE_VGW_SERVICE_NET39_s"}}],
535 "affectedVirtualStorage": [],
537 "affectedcapacity": {"vcp": "72",
540 "sharedStorage": "288",
543 "additionalParam": {"vmList": [{"vmName": "ZTE_xGW_39_CDB_1",
544 "vduId": "VDU_S_CDB_51"},
545 {"vmName": "ZTE_xGW_39_CDB_2",
546 "vduId": "VDU_S_CDB_51"},
547 {"vmName": "ZTE_xGW_39_SLB_1",
548 "vduId": "VDU_M_SLB_42"},
549 {"vmName": "ZTE_xGW_39_SLB_2",
550 "vduId": "VDU_M_SLB_42"},
551 {"vmName": "ZTE_xGW_39_GSU_1",
552 "vduId": "VDU_M_GSU_22"},
553 {"vmName": "ZTE_xGW_39_GSU_2",
554 "vduId": "VDU_M_GSU_22"},
555 {"vmName": "ZTE_xGW_39_MPU_1",
556 "vduId": "VDU_M_MPU_12"},
557 {"vmName": "ZTE_xGW_39_PFU_1",
558 "vduId": "VDU_M_PFU_32"},
559 {"vmName": "ZTE_xGW_39_PFU_2",
560 "vduId": "VDU_M_PFU_32"}]},
562 "affectedCp": [{"changeType": "added",
563 "cPInstanceId": "175767d4-c5bf-11e7-904d-fa163eee1ffe",
565 "cpdId": "CP_NO_0_CDB_ZTE_VGW_MGT_NET39",
566 "portResource": {"resourceId": "3296b6d8-ebca-4d33-98f4-68d1bc63a3d0",
567 "tenant": "ZTE_ONAP_PRO",
568 "vimId": "vmware_vio",
569 "resourceName": "CP_ZTE_xGW_39_CDB_1_ZTE_VGW_MGT_NET39_su1"},
570 "cpInstanceName": "CP_ZTE_xGW_39_CDB_1_ZTE_VGW_MGT_NET39_su1",
571 "ownerid": "17502154-c5bf-11e7-904d-fa163eee1ffe",
572 "virtualLinkInstanceId": "1753b60c-c5bf-11e7-904d-fa163eee1ffe"},
573 {"changeType": "added",
574 "cPInstanceId": "1758181e-c5bf-11e7-904d-fa163eee1ffe",
576 "cpdId": "CP_NO_1_CDB_ZTE_VGW_SERVICE_NET39",
577 "portResource": {"resourceId": "5e277a18-94de-469a-a336-2c01ab46387e",
578 "tenant": "ZTE_ONAP_PRO",
579 "vimId": "vmware_vio",
580 "resourceName": "CP_ZTE_xGW_39_CDB_1_ZTE_VGW_SERVICE_NET39_su2"},
581 "cpInstanceName": "CP_ZTE_xGW_39_CDB_1_ZTE_VGW_SERVICE_NET39_su2",
582 "ownerid": "17502154-c5bf-11e7-904d-fa163eee1ffe",
583 "virtualLinkInstanceId": "175472a4-c5bf-11e7-904d-fa163eee1ffe"}],
584 "vnfdmodule": {"volume_storages": [],
586 "vdus": [{"volume_storages": [],
587 "description": "CDB",
588 "vdu_id": "VDU_S_CDB_51",
589 "local_storages": ["local_disk_root_10GB",
590 "local_disk_ephemeral_14GB"],
591 "nfv_compute": {"flavor_extra_specs": {"hw:cpu_policy": "dedicated",
592 "hw:mem_page_size": "large",
594 "hw:cpu_max_sockets": 1},
599 "vls": ["ZTE_VGW_MGT_NET39_virtualLink",
600 "ZTE_VGW_SERVICE_NET39_virtualLink"],
601 "image_file": "image_51",
602 "cps": ["CP_ZTE_xGW_39_CDB_1_ZTE_VGW_MGT_NET39_su1",
603 "CP_ZTE_xGW_39_CDB_1_ZTE_VGW_SERVICE_NET39_su2"],
604 "properties": {"key_vd": True,
605 "support_scaling": True,
607 "name": "ZTE_xGW_39_CDB_1",
608 "storage_policy": "Share_Service",
609 "inject_network_address": True,
610 "is_predefined": False,
611 "location_info": {"vimid": "",
612 "availability_zone": "",
613 "vdc": "OG_OrganizationDC",
617 "use_shared_vm": False,
618 "inject_data_list": [],
619 "allow_scale_updown": True,
623 "manual_scale_select_vim": False,
624 "config_drive": True}},
625 {"volume_storages": [],
626 "description": "SLB",
627 "vdu_id": "VDU_M_SLB_42",
628 "local_storages": ["local_disk_root_10GB",
629 "local_disk_ephemeral_14GB"],
630 "nfv_compute": {"flavor_extra_specs": {"hw:cpu_policy": "dedicated",
631 "hw:mem_page_size": "large",
633 "hw:cpu_max_sockets": 1},
638 "vls": ["ZTE_VGW_MGT_NET39_virtualLink",
639 "ZTE_VGW_SERVICE_NET39_virtualLink",
640 "ZTE_NET39_virtualLink",
641 "ZTE_VGW_GTP_NET39_virtualLink"],
642 "image_file": "image_51",
643 "cps": ["CP_ZTE_xGW_39_SLB_1_ZTE_VGW_MGT_NET39_su1",
644 "CP_ZTE_xGW_39_SLB_1_ZTE_VGW_SERVICE_NET39_su2",
645 "CP_ZTE_xGW_39_SLB_1_zte-net-subnet393",
646 "CP_ZTE_xGW_39_SLB_1_ZTE_VGW_GTP_NET39_su4"],
647 "properties": {"key_vd": True,
648 "support_scaling": False,
650 "name": "ZTE_xGW_39_SLB_1",
651 "storage_policy": "Share_Service",
652 "inject_network_address": True,
653 "is_predefined": False,
654 "location_info": {"vimid": "",
655 "availability_zone": "",
656 "vdc": "OG_OrganizationDC",
660 "use_shared_vm": False,
661 "inject_data_list": [],
662 "allow_scale_updown": True,
666 "manual_scale_select_vim": False,
667 "config_drive": True}}],
669 "extvirtuallink": "",
671 "image_files": [{"properties": {"vendor": "zte",
672 "name": "ZXUN_xGW_CGSL_QCOW2_OP_V6.17.10.B17.ova",
673 "image_extra_specs": {},
674 "disk_format": "vmdk",
675 "file_url": "SoftwareImages/ZXUN-xGW-CGSL-QCOW2-V6.17.10.B17-image.tar.gz",
676 "container_type": "bare",
677 "version": "V6.17.10.B17.ova"},
678 "image_file_id": "image_51",
679 "description": "xgw image file"}],
681 "local_storages": [{"local_storage_id": "local_disk_ephemeral_38GB",
682 "description": "local_disk_ephemeral_38GB",
683 "properties": {"disk_type": "ephemeral",
685 {"local_storage_id": "local_disk_root_10GB",
686 "description": "local_disk_root_10GB",
687 "properties": {"disk_type": "root",
689 {"local_storage_id": "local_disk_ephemeral_14GB",
690 "description": "local_disk_ephemeral_14GB",
691 "properties": {"disk_type": "ephemeral",
694 "vnf_exposed": {"external_cps": [{"key_name": "ZTE_NET39_virtualLink",
695 "cpd_id": "CP_NO_3_PFU_ZTE_NET39"},
696 {"key_name": "ZTE_NET39_virtualLink1",
697 "cpd_id": "CP_NO_2_PFU_ZTE_NET39"},
698 {"key_name": "ZTE_VGW_GTP_NET39_virtualLink",
699 "cpd_id": "CP_NO_3_SLB_ZTE_VGW_GTP_NET39"},
700 {"key_name": "ZTE_NET39_virtualLink2",
701 "cpd_id": "CP_NO_2_SLB_ZTE_NET39"},
702 {"key_name": "provider-zte_virtualLink",
703 "cpd_id": "CP_NO_2_MPU_provider-zte"}],
704 "forward_cps": [{"key_name": "ZTE_VGW_GTP_NET39_forwarder",
705 "cpd_id": "CP_NO_3_SLB_ZTE_VGW_GTP_NET39"},
706 {"key_name": "ZTE_NET39_forwarder1",
707 "cpd_id": "CP_NO_2_PFU_ZTE_NET39"},
708 {"key_name": "ZTE_NET39_forwarder2",
709 "cpd_id": "CP_NO_3_PFU_ZTE_NET39"},
710 {"key_name": "provider-zte_forwarder",
711 "cpd_id": "CP_NO_2_MPU_provider-zte"},
712 {"key_name": "ZTE_NET39_forwarder",
713 "cpd_id": "CP_NO_2_SLB_ZTE_NET39"}]},
714 "reserved_total": {"portnum": 27,
716 "memorysize": 233472,
720 "policies": [{"scaling": [{"description": "zte vgw vnf policy",
721 "policy_id": "Policy_1",
722 "targets": ["VDU_S_CDB_51",
730 "properties": {"policy_file": "Policies/zte-vcn-vnf-policy.xml"}}],
735 "cps": [{"vl_id": "ZTE_VGW_MGT_NET39_virtualLink",
736 "description": "ZTE_xGW_39_CDB_1_ZTE_VGW_MGT_NET39_s",
737 "vdu_id": "VDU_S_CDB_51",
738 "properties": {"service_port_created": False,
739 "name": "ZTE_xGW_39_CDB_1_ZTE_VGW_MGT_NET39_s",
740 "allowed_address_pairs": [],
744 "vnic_type": "normal",
745 "floating_ip_address": {},
747 "port_security_enabled": False,
748 "ip_address": "192.168.39.247",
750 "security_groups": [],
752 "cp_id": "CP_ZTE_xGW_39_CDB_1_ZTE_VGW_MGT_NET39_su1",
753 "cpd_id": "CP_NO_0_CDB_ZTE_VGW_MGT_NET39"},
754 {"vl_id": "ZTE_VGW_SERVICE_NET39_virtualLink",
755 "description": "ZTE_xGW_39_CDB_1_ZTE_VGW_SERVICE_NET39_s",
756 "vdu_id": "VDU_S_CDB_51",
757 "properties": {"service_port_created": False,
758 "name": "ZTE_xGW_39_CDB_1_ZTE_VGW_SERVICE_NET39_s",
759 "allowed_address_pairs": [],
763 "vnic_type": "normal",
764 "floating_ip_address": {},
766 "port_security_enabled": False,
767 "ip_address": "192.168.40.247",
769 "security_groups": [],
771 "cp_id": "CP_ZTE_xGW_39_CDB_1_ZTE_VGW_SERVICE_NET39_su2",
772 "cpd_id": "CP_NO_1_CDB_ZTE_VGW_SERVICE_NET39"}],
773 "vls": [{"route_external": False,
775 "vl_id": "ZTE_VGW_MGT_NET39_virtualLink",
776 "description": "ZTE_VGW_MGT_NET39_s",
777 "properties": {"gateway_ip": "",
779 "name": "ZTE_VGW_MGT_NET39_s",
780 "location_info": {"vdc": "OG_OrganizationDC",
785 "segmentation_id": "142",
786 "dns_nameservers": [],
789 "is_predefined": True,
791 "netmask": "255.255.255.0",
794 "vlan_transparent": False,
795 "physical_network": "physnet1",
796 "cidr": "192.168.39.0/24",
797 "dhcp_enabled": False,
798 "network_name": "ZTE_VGW_MGT_NET39",
799 "network_type": "vlan"}},
800 {"route_external": False,
802 "vl_id": "ZTE_VGW_SERVICE_NET39_virtualLink",
803 "description": "ZTE_VGW_SERVICE_NET39_s",
804 "properties": {"gateway_ip": "",
806 "name": "ZTE_VGW_SERVICE_NET39_s",
807 "location_info": {"vdc": "OG_OrganizationDC",
812 "segmentation_id": "128",
813 "dns_nameservers": [],
816 "is_predefined": True,
818 "netmask": "255.255.255.0",
821 "vlan_transparent": False,
822 "physical_network": "physnet1",
823 "cidr": "192.168.40.0/24",
824 "dhcp_enabled": False,
825 "network_name": "ZTE_VGW_SERVICE_NET39",
826 "network_type": "vlan"}}],
827 "element_groups": [],
828 "metadata": {"plugin_info": "cn_plugin_3.0",
831 "adjust_vnf_capacity": True,
833 "description": "VMware",
834 "vnf_extend_type": "driver",
838 "service_category": "EPC",
840 "vnf_type": "SAE-GW",
842 "vmnumber_overquota_alarm": True,
843 "vnfd_version": "V00000001",
844 "id": "NFAR-ZTE-40-ZTE",
846 "operation": "instantiate",
847 "vnfmInstanceId": "31f8934e-c785-4fa5-9205-c5f374ada982"}},
848 "vimid": "vmware_vio",
849 "timestamp": "20171110105828",
850 "affectedcp": [{"changeType": "added",
851 "cPInstanceId": "175767d4-c5bf-11e7-904d-fa163eee1ffe",
853 "cpdId": "CP_NO_0_CDB_ZTE_VGW_MGT_NET39",
854 "portResource": {"resourceId": "3296b6d8-ebca-4d33-98f4-68d1bc63a3d0",
855 "tenant": "ZTE_ONAP_PRO",
856 "vimId": "vmware_vio",
857 "resourceName": "CP_ZTE_xGW_39_CDB_1_ZTE_VGW_MGT_NET39_su1"},
858 "cpInstanceName": "CP_ZTE_xGW_39_CDB_1_ZTE_VGW_MGT_NET39_su1",
859 "ownerid": "17502154-c5bf-11e7-904d-fa163eee1ffe",
860 "virtualLinkInstanceId": "1753b60c-c5bf-11e7-904d-fa163eee1ffe"},
861 {"changeType": "added",
862 "cPInstanceId": "1758181e-c5bf-11e7-904d-fa163eee1ffe",
864 "cpdId": "CP_NO_1_CDB_ZTE_VGW_SERVICE_NET39",
865 "portResource": {"resourceId": "5e277a18-94de-469a-a336-2c01ab46387e",
866 "tenant": "ZTE_ONAP_PRO",
867 "vimId": "vmware_vio",
868 "resourceName": "CP_ZTE_xGW_39_CDB_1_ZTE_VGW_SERVICE_NET39_su2"},
869 "cpInstanceName": "CP_ZTE_xGW_39_CDB_1_ZTE_VGW_SERVICE_NET39_su2",
870 "ownerid": "17502154-c5bf-11e7-904d-fa163eee1ffe",
871 "virtualLinkInstanceId": "175472a4-c5bf-11e7-904d-fa163eee1ffe"}],
872 "vmlist": [{"VMNumber": 1,
874 "VMFlavor": "VDU_S_CDB_51",
875 "VMIDlist": [{"VMID": "e8ccc55a-3ebb-4e46-8260-dc4a1646ef4f",
876 "VMName": "ZTE_xGW_39_CDB_1",
877 "vimid": "vmware_vio",
878 "tenant": "ZTE_ONAP_PRO"}]},
881 "VMFlavor": "VDU_M_SLB_42",
882 "VMIDlist": [{"VMID": "a9dd6a73-76ee-4d07-9554-08f14c17261f",
883 "VMName": "ZTE_xGW_39_SLB_1",
884 "vimid": "vmware_vio",
885 "tenant": "ZTE_ONAP_PRO"}]}],
887 "vnfmid": "31f8934e-c785-4fa5-9205-c5f374ada982",
888 "affectedvirtuallink ": [{"changeType": "added",
889 "virtualLinkInstanceId": "1753b60c-c5bf-11e7-904d-fa163eee1ffe",
890 "networkResource": {"resourceId": "c55e0788-3683-48a1-b88a-a0cb5e05bd44",
892 "vimId": "vmware_vio",
893 "resourceName": "ZTE_VGW_MGT_NET39"},
894 "virtualLinkDescId": "ZTE_VGW_MGT_NET39_virtualLink",
895 "tenant": "ZTE_ONAP_PRO",
896 "subnetworkResource": {"resourceId": "33c8a03d-00c9-4c57-a348-26dae462b473",
898 "vimId": "vmware_vio",
899 "resourceName": "ZTE_VGW_MGT_NET39_s"}},
900 {"changeType": "added",
901 "virtualLinkInstanceId": "175472a4-c5bf-11e7-904d-fa163eee1ffe",
902 "networkResource": {"resourceId": "2d22b6e4-340b-45a8-8757-5206aa056b92",
904 "vimId": "vmware_vio",
905 "resourceName": "ZTE_VGW_SERVICE_NET39"},
906 "virtualLinkDescId": "ZTE_VGW_SERVICE_NET39_virtualLink",
907 "tenant": "ZTE_ONAP_PRO",
908 "subnetworkResource": {"resourceId": "2ea2acc0-a4ed-44f8-9d31-9cdc9e3ebe62",
910 "vimId": "vmware_vio",
911 "resourceName": "ZTE_VGW_SERVICE_NET39_s"}}]}