X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_nbi%2Fdescriptor_topics.py;h=ddf8ffc2f579e309cb71e778cbcaf5f29080a120;hb=ba5bbda74eacb668f61976845aeed80197ce400f;hp=ddec65cecc4e2299e043e7108df56a785ffd7161;hpb=bc5a52409c5d3690ebf6810a31662c0846847020;p=osm%2FNBI.git diff --git a/osm_nbi/descriptor_topics.py b/osm_nbi/descriptor_topics.py index ddec65c..ddf8ffc 100644 --- a/osm_nbi/descriptor_topics.py +++ b/osm_nbi/descriptor_topics.py @@ -568,7 +568,7 @@ class DescriptorTopic(BaseTopic): ) storage = content["_admin"]["storage"] if path is not None and path != "$DESCRIPTOR": # artifacts - if not storage.get("pkg-dir"): + if not storage.get("pkg-dir") and not storage.get("folder"): raise EngineException( "Packages does not contains artifacts", http_code=HTTPStatus.BAD_REQUEST, @@ -1223,7 +1223,14 @@ class VnfdTopic(DescriptorTopic): Returns: vnfd (dict): VNFD which does not include policies """ - # TODO: Extract the policy related parts from the VNFD + for df in vnfd.get("df", {}): + for policy in ["scaling-aspect", "healing-aspect"]: + if (df.get(policy, {})): + df.pop(policy) + for vdu in vnfd.get("vdu", {}): + for alarm_policy in ["alarm", "monitoring-parameter"]: + if (vdu.get(alarm_policy, {})): + vdu.pop(alarm_policy) return vnfd @staticmethod