Before creating a Network Slice, check underlying NST is not in DISABLED state
Change-Id: If58bd7fb17e807293b79141f18653fd3350531c5
Signed-off-by: Frank Bryden <frank.bryden@etsi.org>
diff --git a/osm_nbi/instance_topics.py b/osm_nbi/instance_topics.py
index b4fae6a..f4d4c73 100644
--- a/osm_nbi/instance_topics.py
+++ b/osm_nbi/instance_topics.py
@@ -1271,6 +1271,12 @@
nstd = self.db.get_one("nsts", _filter)
del _filter["_id"]
+ # check NSD is not disabled
+ step = "checking operationalState"
+ if nstd["_admin"]["operationalState"] == "DISABLED":
+ raise EngineException("nst with id '{}' is DISABLED, and thus cannot be used to create "
+ "a network slice".format(slice_request["nstId"]), http_code=HTTPStatus.CONFLICT)
+
nstd.pop("_admin", None)
nstd_id = nstd.pop("_id", None)
nsi_id = str(uuid4())