Rm resmgr.grant releated contents 45/115945/8
authordengyh <dengyuanhong@chinamobile.com>
Tue, 8 Dec 2020 08:07:08 +0000 (16:07 +0800)
committerdengyh <dengyuanhong@chinamobile.com>
Tue, 8 Dec 2020 08:15:47 +0000 (16:15 +0800)
Change-Id: Ic2c3d8ae6af742e53fe37a57684637243f81a6c9
Issue-ID: VFC-1771
Signed-off-by: dengyh <dengyuanhong@chinamobile.com>
lcm/ns_sfcs/biz/delete_sfcs.py
lcm/ns_sfcs/tests/test_sfcdetailview.py
lcm/ns_vls/biz/create_vls.py
lcm/ns_vls/biz/delete_vls.py
lcm/ns_vnfs/biz/create_vnfs.py
lcm/ns_vnfs/biz/grant_vnf.py
lcm/ns_vnfs/biz/grant_vnfs.py
lcm/ns_vnfs/biz/terminate_nfs.py
lcm/ns_vnfs/tests/tests.py
lcm/pub/msapi/resmgr.py [deleted file]

index 34d6cf2..f531b4a 100644 (file)
@@ -18,7 +18,7 @@ import traceback
 
 from lcm.pub.database.models import FPInstModel, VNFFGInstModel
 from lcm.pub.exceptions import NSLCMException
-from lcm.pub.msapi import extsys, resmgr, sdncdriver
+from lcm.pub.msapi import extsys, sdncdriver
 
 logger = logging.getLogger(__name__)
 
@@ -36,7 +36,6 @@ class DeleteSfcs(object):
                 return {"result": 0, "detail": "sfc is not exist or has been already deleted"}
             self.ns_inst_id = sfc_inst_info[0].nsinstid
             self.delete_sfc_from_driver(sfc_inst_info[0])
-            # self.delete_sfc_from_resmgr()
             self.delete_sfc_from_db(sfc_inst_info)
             return {"result": 0, "detail": "delete sfc success"}
         except NSLCMException as e:
@@ -78,9 +77,6 @@ class DeleteSfcs(object):
         self.delete_sfc_inst_id_in_vnffg()
         sfc_inst_info.delete()
 
-    def delete_sfc_from_resmgr(self):
-        resmgr.delete_sfc(self.sfc_inst_id)
-
     def delete_sfc_inst_id_in_vnffg(self):
         for vnffg_info in VNFFGInstModel.objects.filter(nsinstid=self.ns_inst_id):
             new_sfc_id_list = ""
index 8059007..02d6db3 100644 (file)
@@ -19,7 +19,6 @@ from django.test import TestCase, Client
 from rest_framework import status
 from lcm.pub.msapi import sdncdriver
 from lcm.pub.database.models import FPInstModel
-from lcm.pub.msapi import resmgr
 
 
 class TestSfcDetailViews(TestCase):
@@ -44,13 +43,11 @@ class TestSfcDetailViews(TestCase):
     @mock.patch.object(sdncdriver, "delete_flow_classifier")
     @mock.patch.object(sdncdriver, "delete_port_pair_group")
     @mock.patch.object(sdncdriver, "delete_port_pair")
-    @mock.patch.object(resmgr, "delete_sfc")
-    def test_sfc_delete_success(self, mock_delete_sfc, mock_delete_port_pair, mock_delete_port_pair_group, mock_delete_flow_classifier, mock_delete_port_chain, mock_get_sdn_controller_by_id):
+    def test_sfc_delete_success(self, mock_delete_port_pair, mock_delete_port_pair_group, mock_delete_flow_classifier, mock_delete_port_chain, mock_get_sdn_controller_by_id):
         mock_delete_port_chain.return_value = None
         mock_delete_flow_classifier.return_value = None
         mock_delete_port_pair_group.return_value = None
         mock_delete_port_pair.return_value = None
-        mock_delete_sfc.return_value = None
         mock_get_sdn_controller_by_id.return_value = json.loads('{"test":"test_name","url":"url_add"}')
         sfc_inst_id = "10"
 
index 1a65d88..c06fe87 100644 (file)
@@ -21,7 +21,7 @@ from lcm.ns.enum import OWNER_TYPE
 from lcm.pub.config.config import REPORT_TO_AAI
 from lcm.pub.database.models import VLInstModel, NSInstModel, VNFFGInstModel
 from lcm.pub.exceptions import NSLCMException
-from lcm.pub.msapi import extsys, resmgr
+from lcm.pub.msapi import extsys
 from lcm.pub.msapi.aai import create_network_aai, create_subnet_aai
 from lcm.pub.nfvi.vim import const
 from lcm.pub.nfvi.vim import vimadaptor
@@ -55,7 +55,6 @@ class CreateVls(object):
         try:
             self.get_data()
             self.create_vl_to_vim()
-            # self.create_vl_to_resmgr()
             self.save_vl_to_db()
             if REPORT_TO_AAI:
                 self.create_network_aai()
@@ -140,40 +139,6 @@ class CreateVls(object):
             raise NSLCMException("Send post vl request to vim failed.")
         return vl_ret[1]
 
-    def create_vl_to_resmgr(self):
-        self.vim_id = json.JSONDecoder().decode(self.vim_id) if isinstance(self.vim_id, str) else self.vim_id
-        vim_id = self.vim_id['cloud_owner'] + self.vim_id['cloud_regionid']
-        req_param = {
-            "vlInstanceId": self.vl_inst_id,
-            "name": self.vl_profile.get("networkName", ""),
-            "backendId": str(self.related_network_id),
-            "isPublic": "True",
-            "dcName": "",
-            "vimId": str(vim_id),
-            "vimName": self.vim_name,
-            "physicialNet": self.vl_profile.get("physicalNetwork", ""),
-            "nsId": self.owner_id,
-            "nsName": self.ns_name,
-            "description": self.description,
-            "networkType": self.vl_profile.get("networkType", ""),
-            "segmentation": str(self.vl_profile.get("segmentationId", "")),
-            "mtu": str(self.vl_profile.get("mtu", "")),
-            "vlanTransparent": str(self.vl_profile.get("vlanTransparent", "")),
-            "routerExternal": self.route_external,
-            "resourceProviderType": "",
-            "resourceProviderId": "",
-            "subnet_list": [{
-                "subnet_name": self.vl_profile.get("networkName", ""),  # self.vl_profile.get("initiationParameters").get("name", ""),
-                "cidr": self.vl_profile.get("cidr", "192.168.0.0/24"),
-                "ip_version": self.vl_profile.get("ip_version", const.IPV4),
-                "enable_dhcp": self.vl_profile.get("dhcpEnabled", False),
-                "gateway_ip": self.vl_profile.get("gatewayIp", ""),
-                "dns_nameservers": self.vl_profile.get("dns_nameservers", ""),
-                "host_routes": self.vl_profile.get("host_routes", "")
-            }]
-        }
-        resmgr.create_vl(req_param)
-
     def create_vl_inst_id_in_vnffg(self):
         if "vnffgs" in self.context:
             for vnffg_info in self.context["vnffgs"]:
index 6424d4d..d96a1b2 100644 (file)
@@ -19,7 +19,7 @@ import traceback
 from lcm.pub.config.config import REPORT_TO_AAI
 from lcm.pub.database.models import VLInstModel, VNFFGInstModel
 from lcm.pub.exceptions import NSLCMException
-from lcm.pub.msapi import resmgr, extsys
+from lcm.pub.msapi import extsys
 from lcm.pub.msapi.aai import query_network_aai, delete_network_aai
 from lcm.pub.nfvi.vim import vimadaptor
 
@@ -44,7 +44,6 @@ class DeleteVls(object):
             subnetwork_id_list = vl_inst_info[0].relatedsubnetworkid.split(",")
             network_id = vl_inst_info[0].relatednetworkid
             self.delete_vl_from_vim(vim_id, subnetwork_id_list, network_id)
-            # self.delete_vl_from_resmgr()
             if REPORT_TO_AAI:
                 self.delete_network_and_subnet_in_aai()
             self.delete_vl_from_db(vl_inst_info)
@@ -74,9 +73,6 @@ class DeleteVls(object):
             vim_api.delete_subnet(subnet_id=subnetwork_id)
         vim_api.delete_network(network_id=network_id)
 
-    def delete_vl_from_resmgr(self):
-        resmgr.delete_vl(self.vl_inst_id)
-
     def delete_vl_inst_id_in_vnffg(self):
         for vnffg_info in VNFFGInstModel.objects.filter(nsinstid=self.ns_inst_id):
             new_vl_id_list = ""
index ca7ca57..6989805 100644 (file)
@@ -22,16 +22,15 @@ from lcm.ns.enum import OWNER_TYPE
 from lcm.ns_vnfs.const import NFVO_VNF_INST_TIMEOUT_SECOND
 from lcm.ns_vnfs.biz.subscribe import SubscriptionCreation
 from lcm.ns_vnfs.biz.wait_job import wait_job_finish
-from lcm.ns_vnfs.enum import VNF_STATUS, INST_TYPE
+from lcm.ns_vnfs.enum import VNF_STATUS
 from lcm.pub.config.config import REPORT_TO_AAI
 from lcm.pub.config.config import REG_TO_MSB_REG_PARAM, OOF_BASE_URL, OOF_PASSWD, OOF_USER
 from lcm.pub.config.config import CUST_NAME, CUST_LAT, CUST_LONG
-from lcm.pub.database.models import NfInstModel, NSInstModel, VmInstModel, VNFFGInstModel, VLInstModel, OOFDataModel
+from lcm.pub.database.models import NfInstModel, NSInstModel, VNFFGInstModel, VLInstModel, OOFDataModel
 from lcm.jobs.enum import JOB_MODEL_STATUS, JOB_ACTION, JOB_PROGRESS, JOB_ERROR_CODE, JOB_TYPE
 from lcm.pub.exceptions import NSLCMException
 from lcm.pub.msapi.aai import create_vnf_aai
 from lcm.pub.msapi.extsys import get_vnfm_by_id
-from lcm.pub.msapi.resmgr import create_vnf, create_vnf_creation_info
 from lcm.pub.msapi.sdc_run_catalog import query_vnfpackage_by_id
 from lcm.pub.msapi.vnfmdriver import send_nf_init_request
 from lcm.pub.utils import restcall
@@ -89,10 +88,8 @@ class CreateVnfs(Thread):
             self.send_nf_init_request_to_vnfm()
             self.send_homing_request_to_OOF()
             self.send_get_vnfm_request_to_extsys()
-            # self.send_create_vnf_request_to_resmgr()
             self.wait_vnfm_job_finish()
             self.subscribe()
-            # self.write_vnf_creation_info()
             self.save_info_to_db()
             JobUtil.add_job_status(self.job_id, JOB_PROGRESS.FINISHED, 'vnf instantiation success', JOB_ERROR_CODE.NO_ERROR)
         except NSLCMException as e:
@@ -363,26 +360,6 @@ class CreateVnfs(Thread):
         resp_body = get_vnfm_by_id(self.vnfm_inst_id)
         self.vnfm_inst_name = ignore_case_get(resp_body, 'name')
 
-    def send_create_vnf_request_to_resmgr(self):
-        pkg_vnfd = self.vnfd_model
-        data = {
-            'nf_inst_id': self.nf_inst_id,
-            'vnfm_nf_inst_id': self.vnfm_nf_inst_id,
-            'vnf_inst_name': self.vnf_inst_name,
-            'ns_inst_id': self.ns_inst_id,
-            'ns_inst_name': self.ns_inst_name,
-            'nf_inst_name': self.vnf_inst_name,
-            'vnfm_inst_id': self.vnfm_inst_id,
-            'vnfm_inst_name': self.vnfm_inst_name,
-            'vnfd_name': pkg_vnfd['metadata'].get('name', 'undefined'),
-            'vnfd_id': self.vnfd_id,
-            'job_id': self.job_id,
-            'nf_inst_status': VNF_STATUS.INSTANTIATING,
-            'vnf_type': pkg_vnfd['metadata'].get('vnf_type', 'undefined'),
-            'nf_package_id': ignore_case_get(self.nf_package_info, "vnfPackageId")
-        }
-        create_vnf(data)
-
     def wait_vnfm_job_finish(self):
         ret = wait_job_finish(
             vnfm_id=self.vnfm_inst_id,
@@ -406,18 +383,6 @@ class CreateVnfs(Thread):
         except Exception as e:
             logger.error("subscribe failed: %s", e.args[0])
 
-    def write_vnf_creation_info(self):
-        logger.debug("write_vnf_creation_info start")
-        vm_inst_infos = VmInstModel.objects.filter(insttype=INST_TYPE.VNF, instid=self.nf_inst_id)
-        data = {
-            'nf_inst_id': self.nf_inst_id,
-            'ns_inst_id': self.ns_inst_id,
-            'vnfm_inst_id': self.vnfm_inst_id,
-            'vms': [{'vmId': vm_inst_info.resouceid, 'vmName': vm_inst_info.vmname, 'vmStatus': 'ACTIVE'} for vm_inst_info in vm_inst_infos]
-        }
-        create_vnf_creation_info(data)
-        logger.debug("write_vnf_creation_info end")
-
     def save_info_to_db(self):
         logger.debug("save_info_to_db start")
         # do_biz_with_share_lock("set-vnflist-in-vnffginst-%s" % self.ns_inst_id, self.save_vnf_inst_id_in_vnffg)
index 882edd5..2617520 100644 (file)
@@ -18,7 +18,6 @@ import uuid
 import time
 from lcm.pub.database.models import NfInstModel, OOFDataModel
 from lcm.pub.exceptions import NSLCMException
-from lcm.pub.msapi import resmgr
 from lcm.pub.msapi.sdc_run_catalog import query_vnfpackage_by_id
 from lcm.pub.utils.values import ignore_case_get
 from lcm.ns_vnfs.const import SCALAR_UNIT_DICT
@@ -90,18 +89,19 @@ class GrantVnf(object):
                         break
                 req_param[grant_type].append(grant_res)
             self.data = req_param
-        tmp = resmgr.grant_vnf(self.data)
+        res = vim_connections_get(self.data)
         vimConnections.append(
             {
-                "id": tmp["vim"]["vimId"],
-                "vimId": tmp["vim"]["vimId"],
+                "id": res["vim"]["vimId"],
+                "vimId": res["vim"]["vimId"],
                 "vimType": None,
                 "interfaceInfo": None,
-                "accessInfo": tmp["vim"]["accessInfo"],
+                "accessInfo": {
+                    "tenant": res["vim"]["accessInfo"]["tenant"]
+                },
                 "extra": None
             }
         )
-
         grant_resp = {
             "id": str(uuid.uuid4()),
             "vnfInstanceId": ignore_case_get(self.data, 'vnfInstanceId'),
@@ -112,7 +112,8 @@ class GrantVnf(object):
         logger.debug("action_type=%s" % action_type)
         if action_type == 'INSTANTIATE':
             for i in range(18):
-                offs = OOFDataModel.objects.filter(service_resource_id=ignore_case_get(self.data, "vnfInstanceId"))
+                offs = OOFDataModel.objects.filter(
+                    service_resource_id=ignore_case_get(self.data, "vnfInstanceId"))
                 if not (offs.exists() and offs[0].vdu_info):
                     logger.debug("Cannot find oof data, retry%s" % (i + 1))
                     time.sleep(5)
@@ -145,7 +146,8 @@ class GrantVnf(object):
                     "numVirtualCpu": int(vdu["virtual_compute"]["virtual_cpu"]["num_virtual_cpu"])
                 },
                 "virtualMemory": {
-                    "virtualMemSize": parse_unit(vdu["virtual_compute"]["virtual_memory"]["virtual_mem_size"], "MB")
+                    "virtualMemSize": parse_unit(
+                        vdu["virtual_compute"]["virtual_memory"]["virtual_mem_size"], "MB")
                 }
             },
             "virtualStorageDescriptor": {
@@ -172,3 +174,33 @@ def parse_unit(val, base_unit):
         return val.strip()
     num, unit = num_unit[0], num_unit[1]
     return int(num) * SCALAR_UNIT_DICT[unit.upper()] / SCALAR_UNIT_DICT[base_unit.upper()]
+
+
+def vim_connections_get(req_param):
+    vim_id = ""
+    if "vimId" in req_param:
+        vim_id = req_param["vimId"]
+    elif "additionalparam" in req_param and "vimid" in req_param["additionalparam"]:
+        vim_id = req_param["additionalparam"]["vimid"]
+    elif "additionalParams" in req_param and "vimid" in req_param["additionalParams"]:
+        vim_id = req_param["additionalParams"]["vimid"]
+    try:
+        from lcm.pub.msapi import extsys
+        vim = extsys.get_vim_by_id(vim_id)
+        if isinstance(vim, list):
+            vim = vim[0]
+            vim_id = vim["vimId"]
+        if "vimId" in vim:
+            vim_id = vim["vimId"]
+        rsp = {
+            "vim": {
+                "vimId": vim_id,
+                "accessInfo": {
+                    "tenant": vim["tenant"]
+                }
+            }
+        }
+        logger.debug("rsp=%s" % rsp)
+        return rsp
+    except:
+        raise NSLCMException('Failed to get vimConnections info')
index fac7343..421b383 100644 (file)
 # limitations under the License.
 
 import json
+
 import logging
 
+from lcm.ns_vnfs.biz.grant_vnf import vim_connections_get
 from lcm.pub.database.models import NfInstModel
 from lcm.pub.exceptions import NSLCMException
-from lcm.pub.msapi import resmgr
+
 from lcm.pub.msapi.sdc_run_catalog import query_vnfpackage_by_id
 from lcm.pub.utils.values import ignore_case_get
+
 from lcm.ns_vnfs.const import SCALAR_UNIT_DICT
 
 logger = logging.getLogger(__name__)
@@ -88,7 +91,7 @@ class GrantVnfs(object):
                         break
                 req_param[grant_type].append(grant_res)
             self.data = req_param
-        return resmgr.grant_vnf(self.data)
+        return vim_connections_get(self.data)
 
     def get_res_tpl(self, vdu, vnfd):
         storage_size = 0
index c663669..8d64879 100644 (file)
@@ -20,7 +20,6 @@ import traceback
 from lcm.pub.config.config import REPORT_TO_AAI
 from lcm.pub.database.models import NfInstModel, VmInstModel, OOFDataModel, PortInstModel
 from lcm.pub.exceptions import NSLCMException
-from lcm.pub.msapi import resmgr
 from lcm.pub.msapi.aai import query_vnf_aai, delete_vnf_aai, query_vserver_aai, delete_vserver_aai
 from lcm.pub.msapi.extsys import split_vim_to_owner_region, get_vim_by_id
 from lcm.pub.msapi.vnfmdriver import send_nf_terminate_request
@@ -57,7 +56,6 @@ class TerminateVnfs(threading.Thread):
             self.check_nf_valid()
             self.send_nf_terminate_to_vnfmDriver()
             self.wait_vnfm_job_finish()
-            # self.send_terminate_vnf_to_resMgr()
             if REPORT_TO_AAI:
                 self.delete_vserver_in_aai()
                 self.delete_vnf_in_aai()
@@ -121,9 +119,6 @@ class TerminateVnfs(threading.Thread):
         rsp = send_nf_terminate_request(self.vnfm_inst_id, self.vnf_uuid, req_param)
         self.vnfm_job_id = ignore_case_get(rsp, 'jobId')
 
-    def send_terminate_vnf_to_resMgr(self):
-        resmgr.terminate_vnf(self.vnf_inst_id)
-
     def wait_vnfm_job_finish(self):
         if not self.vnfm_job_id:
             logger.warn("No Job, need not wait")
index e67c0d5..a88e05d 100644 (file)
@@ -19,6 +19,7 @@ import mock
 from django.test import TestCase, Client
 from rest_framework import status
 
+from lcm.ns_vnfs.biz.grant_vnfs import GrantVnfs
 from lcm.pub.database.models import VLInstModel, NfInstModel, JobModel, NSInstModel, VmInstModel, \
     OOFDataModel, VNFCInstModel, PortInstModel, CPInstModel, SubscriptionModel
 from lcm.pub.exceptions import NSLCMException
@@ -35,12 +36,10 @@ from lcm.ns_vnfs.biz.terminate_nfs import TerminateVnfs
 from lcm.ns_vnfs.enum import VNF_STATUS, LIFE_CYCLE_OPERATION, RESOURCE_CHANGE_TYPE, VNFC_CHANGE_TYPE, \
     INST_TYPE, NETWORK_RESOURCE_TYPE
 from lcm.ns_vnfs.biz.place_vnfs import PlaceVnfs
-from lcm.pub.msapi import resmgr
 from lcm.ns_vnfs.tests.test_data import vnfm_info, vim_info, vnf_place_request
 from lcm.ns_vnfs.tests.test_data import nf_package_info, nsd_model_dict, subscription_response_data
 from lcm.ns_vnfs.biz.create_vnfs import CreateVnfs
-from lcm.ns_vnfs.biz import create_vnfs
-from lcm.ns_vnfs.biz.grant_vnfs import GrantVnfs
+from lcm.ns_vnfs.biz import create_vnfs, grant_vnf
 from lcm.ns_vnfs.biz.update_vnfs import NFOperateService
 from lcm.ns_vnfs.biz.verify_vnfs import VerifyVnfs
 from lcm.ns.enum import OWNER_TYPE
@@ -866,7 +865,6 @@ class TestGrantVnfsViews(TestCase):
     #     }
     #     response = self.client.post(self.url, data=data)
     #     self.assertEqual(response.status_code, status.HTTP_201_CREATED)
-
     @mock.patch.object(restcall, "call_req")
     def test_nf_grant_view_when_add_resource(self, mock_call_req):
         mock_vals = {
@@ -930,7 +928,7 @@ class TestGrantVnfViews(TestCase):
         OOFDataModel.objects.all().delete()
         NfInstModel.objects.all().delete()
 
-    @mock.patch.object(resmgr, "grant_vnf")
+    @mock.patch.object(grant_vnf, "vim_connections_get")
     def test_vnf_grant_view(self, mock_grant):
         resmgr_grant_resp = {
             "vim": {
@@ -949,7 +947,7 @@ class TestGrantVnfViews(TestCase):
         self.assertEqual(response.data["vimAssets"]["computeResourceFlavours"][0]["vimFlavourId"], "flavor_id_001")
 
     @mock.patch.object(restcall, "call_req")
-    @mock.patch.object(resmgr, "grant_vnf")
+    @mock.patch.object(grant_vnf, "vim_connections_get")
     def test_exec_grant_when_add_resources_success(self, mock_grant, mock_call_req):
         mock_vals = {
             "/api/catalog/v1/vnfpackages/package_id_001":
@@ -986,7 +984,7 @@ class TestGrantVnfViews(TestCase):
 
     @mock.patch.object(time, "sleep")
     @mock.patch.object(restcall, "call_req")
-    @mock.patch.object(resmgr, "grant_vnf")
+    @mock.patch.object(grant_vnf, "vim_connections_get")
     def test_exec_grant_when_add_resources_but_no_off(self, mock_grant, mock_call_req, mock_sleep):
         NfInstModel(mnfinstid="add_resources_but_no_off", nfinstid="vnf_inst_id_002",
                     package_id="package_id_002").save()
@@ -1023,7 +1021,7 @@ class TestGrantVnfViews(TestCase):
         }]
         self.assertEqual(resp["vimConnections"], vimConnections)
 
-    @mock.patch.object(resmgr, "grant_vnf")
+    @mock.patch.object(grant_vnf, "vim_connections_get")
     def test_exec_grant_when_resource_template_in_add_resources(self, mock_grant):
         resmgr_grant_resp = {
             "vim": {
@@ -1041,7 +1039,7 @@ class TestGrantVnfViews(TestCase):
         self.assertEqual(resp["vimAssets"]["computeResourceFlavours"][0]["vimFlavourId"], "flavor_id_001")
 
     @mock.patch.object(restcall, "call_req")
-    @mock.patch.object(resmgr, "grant_vnf")
+    @mock.patch.object(grant_vnf, "vim_connections_get")
     def test_exec_grant_when_remove_resources_success(self, mock_grant, mock_call_req):
         mock_vals = {
             "/api/catalog/v1/vnfpackages/package_id_001":
@@ -1083,7 +1081,7 @@ class TestGrantVnfViews(TestCase):
 
     @mock.patch.object(time, "sleep")
     @mock.patch.object(restcall, "call_req")
-    @mock.patch.object(resmgr, "grant_vnf")
+    @mock.patch.object(grant_vnf, "vim_connections_get")
     def test_exec_grant_when_remove_resources_but_no_off(self, mock_grant, mock_call_req, mock_sleep):
         NfInstModel(mnfinstid="remove_resources_but_no_off", nfinstid="vnf_inst_id_002", package_id="package_id_002",
                     vnfm_inst_id="vnfm_id_002").save()
@@ -1123,7 +1121,7 @@ class TestGrantVnfViews(TestCase):
         }]
         self.assertEqual(resp["vimConnections"], vimConnections)
 
-    @mock.patch.object(resmgr, "grant_vnf")
+    @mock.patch.object(grant_vnf, "vim_connections_get")
     def test_exec_grant_when_resource_template_in_remove_resources(self, mock_grant):
         resmgr_grant_resp = {
             "vim": {
diff --git a/lcm/pub/msapi/resmgr.py b/lcm/pub/msapi/resmgr.py
deleted file mode 100644 (file)
index db2c5e2..0000000
+++ /dev/null
@@ -1,126 +0,0 @@
-# Copyright 2016 ZTE Corporation.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#         http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-import json
-import logging
-
-from lcm.pub.exceptions import NSLCMException
-from lcm.pub.utils.restcall import req_by_msb
-
-logger = logging.getLogger(__name__)
-
-
-def create_vl(req_param):
-    ret = req_by_msb("/api/resmgr/v1/vl", "POST", json.JSONEncoder().encode(req_param))
-    if ret[0] != 0:
-        logger.error("Failed to create vl to resmgr. detail is %s.", ret[1])
-        # raise NSLCMException('Failed to create vl to resmgr.')
-    # return json.JSONDecoder().decode(ret[1])
-
-
-def delete_vl(vl_inst_id):
-    ret = req_by_msb("/api/resmgr/v1/vl/%s" % vl_inst_id, "DELETE")
-    if ret[0] != 0:
-        logger.error("Failed to delete vl(%s) to resmgr. detail is %s.", vl_inst_id, ret[1])
-        # raise NSLCMException("Failed to delete vl(%s) to resmgr." % vl_inst_id)
-
-
-def delete_sfc(sfc_inst_id):
-    ret = req_by_msb("/api/resmgr/v1/sfc/%s" % sfc_inst_id, "DELETE")
-    if ret[0] != 0:
-        logger.error("Failed to delete sfc(%s) to resmgr. detail is %s.", sfc_inst_id, ret[1])
-        # raise NSLCMException("Failed to delete sfc(%s) to resmgr." % sfc_inst_id)
-
-
-def grant_vnf(req_param):
-    grant_data = json.JSONEncoder().encode(req_param)
-    ret = req_by_msb("/api/resmgr/v1/resource/grant", "PUT", grant_data)
-    if ret[0] != 0:
-        logger.error("Failed to grant vnf to resmgr. detail is %s.", ret[1])
-        # raise NSLCMException('Failed to grant vnf to resmgr.')
-        vim_id = ""
-        if "vimId" in req_param:
-            vim_id = req_param["vimId"]
-        elif "additionalparam" in req_param and "vimid" in req_param["additionalparam"]:
-            vim_id = req_param["additionalparam"]["vimid"]
-        elif "additionalParams" in req_param and "vimid" in req_param["additionalParams"]:
-            vim_id = req_param["additionalParams"]["vimid"]
-        try:
-            from lcm.pub.msapi import extsys
-            vim = extsys.get_vim_by_id(vim_id)
-            if isinstance(vim, list):
-                vim = vim[0]
-                vim_id = vim["vimId"]
-            if "vimId" in vim:
-                vim_id = vim["vimId"]
-            grant_rsp = {
-                "vim": {
-                    "vimId": vim_id,
-                    "accessInfo": {
-                        "tenant": vim["tenant"]
-                    }
-                }
-            }
-            logger.debug("grant_rsp=%s" % grant_rsp)
-            return grant_rsp
-        except:
-            raise NSLCMException('Failed to grant vnf to resmgr.')
-    return json.JSONDecoder().decode(ret[1])
-
-
-def create_vnf(data):
-    uri = '/api/resmgr/v1/vnf'
-    req_param = json.JSONEncoder().encode({
-        'orchVnfInstanceId': data['nf_inst_id'],
-        'vnfInstanceId': data['vnfm_nf_inst_id'],
-        'vnfInstanceName': data['vnf_inst_name'],
-        'nsId': data['ns_inst_id'],
-        'nsName': data['ns_inst_name'],
-        'vnfmId': data['vnfm_inst_id'],
-        'vnfmName': data['vnfm_inst_name'],
-        'vnfPackageName': data['vnfd_name'],
-        'vnfDescriptorName': data['vnfd_id'],
-        'jobId': data['job_id'],
-        'vnfStatus': data['nf_inst_status'],
-        'vnfType': data['vnf_type'],
-        'onboardingId': data['nf_package_id'],
-        'onboardingName': data['vnfd_name']})
-
-    ret = req_by_msb(uri, "POST", req_param)
-    if ret[0] != 0:
-        logger.error('Send create VNF request to resmgr failed.')
-        # raise NSLCMException('Send create VNF request to resmgr failed.')
-
-
-def create_vnf_creation_info(data):
-    uri = '/api/resmgr/v1/vnfinfo'
-    req_param = json.JSONEncoder().encode({
-        'vnfInstanceId': data['nf_inst_id'],
-        'nsId': data['ns_inst_id'],
-        'vnfmId': data['vnfm_inst_id'],
-        'vms': data['vms']})
-
-    ret = req_by_msb(uri, "POST", req_param)
-    if ret[0] > 0:
-        logger.error('Send write vnf creation information to resmgr failed.')
-        # raise NSLCMException('Send write vnf creation information to resmgr failed.')
-
-
-def terminate_vnf(vnf_inst_id):
-    uri = '/api/resmgr/v1/vnf/%s' % vnf_inst_id
-    req_param = {}
-    ret = req_by_msb(uri, "DELETE", json.dumps(req_param))
-    if ret[0] > 0:
-        logger.error('Send terminate VNF request to resmgr failed.')
-        # raise NSLCMException('Send terminate VNF request to resmgr failed.')