From 82a47bd746d352c06125b9064b87f98782addc66 Mon Sep 17 00:00:00 2001 From: maopengzhang Date: Fri, 2 Nov 2018 15:54:16 +0800 Subject: [PATCH] change the additionalParamForNs to be option change the additionalParamForNs to be option Change-Id: I5ad9bf191f4b4ddafdd5049055e9c41ce26d4820 Issue-ID: VFC-1158 Signed-off-by: maopengzhang --- lcm/ns/biz/ns_instant.py | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/lcm/ns/biz/ns_instant.py b/lcm/ns/biz/ns_instant.py index 52f686be..d648ed26 100644 --- a/lcm/ns/biz/ns_instant.py +++ b/lcm/ns/biz/ns_instant.py @@ -58,14 +58,18 @@ class InstantNSService(object): logger.debug('ns-instant(%s) workflow starting...' % self.ns_inst_id) logger.debug('req_data=%s' % self.req_data) ns_inst = NSInstModel.objects.get(id=self.ns_inst_id) + vim_id = '' input_parameters = [] - for key, val in self.req_data['additionalParamForNs'].items(): - input_parameters.append({"key": key, "value": val}) + if 'additionalParamForNs' in self.req_data: + for key, val in self.req_data['additionalParamForNs'].items(): + input_parameters.append({"key": key, "value": val}) + if 'location' in self.req_data['additionalParamForNs']: + vim_id = self.req_data['additionalParamForNs']['location'] + params_json = json.JSONEncoder().encode(self.req_data["additionalParamForNs"]) + else: + params_json = {} - vim_id = '' - if 'location' in self.req_data['additionalParamForNs']: - vim_id = self.req_data['additionalParamForNs']['location'] location_constraints = [] if 'locationConstraints' in self.req_data: location_constraints = self.req_data['locationConstraints'] @@ -76,7 +80,6 @@ class InstantNSService(object): logger.debug('Start query nsd(%s)' % ns_inst.nspackage_id) NSInstModel.objects.filter(id=self.ns_inst_id).update(nsd_model=dst_plan) - params_json = json.JSONEncoder().encode(self.req_data["additionalParamForNs"]) params_vnf = [] plan_dict = json.JSONDecoder().decode(dst_plan) for vnf in ignore_case_get(plan_dict, "vnfs"): @@ -113,8 +116,10 @@ class InstantNSService(object): 'object_additionalParamForPnf': pnf_params_json } plan_input.update(**self.get_model_count(dst_plan)) - plan_input["sdnControllerId"] = ignore_case_get( - self.req_data['additionalParamForNs'], "sdncontroller") + + if 'additionalParamForNs' in self.req_data: + plan_input["sdnControllerId"] = ignore_case_get( + self.req_data['additionalParamForNs'], "sdncontroller") ServiceBaseInfoModel(service_id=self.ns_inst_id, service_name=ns_inst.name, -- 2.16.6