Fix vfc-vnflcm create resource issue 57/37357/1
authorying.yunlong <ying.yunlong@zte.com.cn>
Wed, 21 Mar 2018 07:26:22 +0000 (15:26 +0800)
committerying.yunlong <ying.yunlong@zte.com.cn>
Wed, 21 Mar 2018 07:26:22 +0000 (15:26 +0800)
Change-Id: I70cc32a59bba1f697201d43dc62bc09277378ea2
Issue-ID: VFC-838
Signed-off-by: ying.yunlong <ying.yunlong@zte.com.cn>
lcm/lcm/nf/vnf_create/create_vnf_identifier.py
lcm/lcm/nf/vnf_create/inst_vnf.py

index d85a228..5f5deda 100644 (file)
@@ -11,7 +11,7 @@
 # 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
 import traceback
 import uuid
@@ -83,10 +83,11 @@ class CreateVnf:
         logger.debug("check_valid::is_exist=%s" % is_exist)
         if is_exist:
             raise NFLCMException('VNF is already exist.')
-        self.vnfdModel = query_vnfpackage_by_id(self.csar_id)
+        vnf_package_info = query_vnfpackage_by_id(self.csar_id)
+        self.vnfd_info = json.loads(ignore_case_get(ignore_case_get(vnf_package_info, "packageInfo"), "vnfdModel"))
 
     def save_db(self):
-        metadata = ignore_case_get(self.vnfdModel, "metadata")
+        metadata = ignore_case_get(self.vnfd_info, "metadata")
         version = ignore_case_get(metadata, "vnfdVersion")
         vendor = ignore_case_get(metadata, "vendor")
         netype = ignore_case_get(metadata, "type")
@@ -97,7 +98,7 @@ class CreateVnf:
                                    version=version,
                                    vendor=vendor,
                                    netype=netype,
-                                   vnfd_model=self.vnfdModel,
+                                   vnfd_model=self.vnfd_info,
                                    status='NOT_INSTANTIATED',
                                    nf_desc=self.description,
                                    vnfdid=self.vnfd_id,
index f9d0c06..09cf506 100644 (file)
@@ -76,7 +76,8 @@ class InstVnf(Thread):
                 inputs = json.loads(inputs)
             for key, val in inputs.items():
                 input_parameters.append({"key": key, "value": val})
-        self.vnfd_info = query_vnfpackage_by_id(self.vnfd_id)
+        vnf_package_info = query_vnfpackage_by_id(self.vnfd_id)
+        self.vnfd_info = json.loads(ignore_case_get(ignore_case_get(vnf_package_info, "packageInfo"), "vnfdModel"))
         # self.vnfd_info = vnfd_model_dict  # just for test
 
         self.update_cps()
@@ -172,10 +173,8 @@ class InstVnf(Thread):
 
     def create_res(self):
         logger.info("[NF instantiation] create resource start")
-        self.vnfdModel = json.loads(ignore_case_get(ignore_case_get(self.vnfd_info, "packageInfo"), "vnfdModel"))
-        logger.debug("self.vnfdModel = %s", self.vnfdModel)
-        adaptor.create_vim_res(self.vnfdModel, self.do_notify)
-
+        logger.debug("self.vnfdModel = %s", self.vnfd_info)
+        adaptor.create_vim_res(self.vnfd_info, self.do_notify)
         JobUtil.add_job_status(self.job_id, 70, '[NF instantiation] create resource finish')
         logger.info("[NF instantiation] create resource finish")