Fix bug 2414: descriptor validation should skip storage and compute desc for PDUs

Change-Id: I4cc0ad8cfd3805a7c530a41a265226efdb1791e6
Signed-off-by: garciadeblas <gerardo.garciadeblas@telefonica.com>
diff --git a/osm_nbi/descriptor_topics.py b/osm_nbi/descriptor_topics.py
index 7a034fa..b2d6639 100644
--- a/osm_nbi/descriptor_topics.py
+++ b/osm_nbi/descriptor_topics.py
@@ -1319,8 +1319,10 @@
         for vcd in get_iterable(indata.get("virtual-compute-desc")):
             all_vcd_ids.add(vcd.get("id"))
 
-        for vdus in get_iterable(indata.get("vdu")):
-            for vsd_ref in vdus.get("virtual-storage-desc"):
+        for vdu in get_iterable(indata.get("vdu")):
+            if "pdu-type" in vdu:
+                continue
+            for vsd_ref in vdu.get("virtual-storage-desc"):
                 if vsd_ref and vsd_ref not in all_vsd_ids:
                     raise EngineException(
                         "vdu[virtual-storage-desc='{}']"
@@ -1330,13 +1332,15 @@
                         http_code=HTTPStatus.UNPROCESSABLE_ENTITY,
                     )
 
-        for vdus in get_iterable(indata.get("vdu")):
-            vcd_ref = vdus.get("virtual-compute-desc")
+        for vdu in get_iterable(indata.get("vdu")):
+            if "pdu-type" in vdu:
+                continue
+            vcd_ref = vdu.get("virtual-compute-desc")
             if vcd_ref and vcd_ref not in all_vcd_ids:
                 raise EngineException(
                     "vdu[virtual-compute-desc='{}']"
                     "not defined in vnfd".format(
-                        vdus["virtual-compute-desc"],
+                        vdu["virtual-compute-desc"],
                     ),
                     http_code=HTTPStatus.UNPROCESSABLE_ENTITY,
                 )