X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=osm_nbi%2Fengine.py;h=b5989c0aa9e551ad66ab46207d49147397baba33;hb=refs%2Fchanges%2F03%2F6203%2F3;hp=ed35c7c0327595b09aa97a5af27ac6e66fc3a0fe;hpb=0e96a88ce78692b6e4dc4f5a43ade2ccf7fca195;p=osm%2FNBI.git diff --git a/osm_nbi/engine.py b/osm_nbi/engine.py index ed35c7c..b5989c0 100644 --- a/osm_nbi/engine.py +++ b/osm_nbi/engine.py @@ -857,8 +857,8 @@ class Engine(object): return folder_content, "text/plain" # TODO manage folders in http else: - return self.fs.file_open((storage['folder'], storage['pkg-dir'], *path), "rb"), \ - "application/octet-stream" + return self.fs.file_open((storage['folder'], storage['pkg-dir'], *path), "rb"),\ + "application/octet-stream" # pkgtype accept ZIP TEXT -> result # manyfiles yes X -> zip @@ -949,10 +949,8 @@ class Engine(object): self.db.del_list("vnfrs", {"nsr-id-ref": _id}) self.msg.write("ns", "deleted", {"_id": _id}) return v - if item in ("vim_accounts", "sdns"): - desc = self.db.get_one(item, filter) - desc["_admin"]["to_delete"] = True - self.db.replace(item, _id, desc) # TODO change to set_one + if item in ("vim_accounts", "sdns") and not force: + self.db.set_one(item, {"_id": _id}, {"_admin.to_delete": True}) # TODO change status if item == "vim_accounts": self.msg.write("vim_account", "delete", {"_id": _id}) elif item == "sdns": @@ -960,7 +958,10 @@ class Engine(object): return {"deleted": 1} # TODO indicate an offline operation to return 202 ACCEPTED v = self.db.del_one(item, filter) - self.fs.file_delete(_id, ignore_non_exist=True) + if item in ("vnfds", "nsds"): + self.fs.file_delete(_id, ignore_non_exist=True) + if item in ("vim_accounts", "sdns", "vnfds", "nsds"): + self.msg.write(item[:-1], "deleted", {"_id": _id}) return v def prune(self):