Support PNF In NSLCM
[vfc/nfvo/lcm.git] / lcm / pub / msapi / sdc_run_catalog.py
index e12c214..547a542 100644 (file)
@@ -55,3 +55,15 @@ def query_vnfpackage_by_id(csar_id):
         logger.error("Status code is %s, detail is %s.", ret[2], ret[1])
         raise NSLCMException("Failed to query vnf CSAR(%s) from catalog." % csar_id)
     return json.JSONDecoder().decode(ret[1])
+
+
+def query_pnf_descriptor(filter=None):
+    if filter:
+        pnfdInfoId = filter.get("pnfdInfoId")
+        ret = req_by_msb("/api/catalog/v1/pnf_descriptors/%s" % pnfdInfoId, "GET")
+    else:
+        ret = req_by_msb("/api/catalog/v1/pnf_descriptors", "GET")
+    if ret[0] != 0:
+        logger.error("Status code is %s, detail is %s.", ret[2], ret[1])
+        raise NSLCMException("Failed to query pnf descriptor(%s) from catalog." % pnfdInfoId)
+    return json.JSONDecoder().decode(ret[1])