Fix deregister cluster command to use DELETE HTTP message 18/14818/1
authorgarciadeblas <gerardo.garciadeblas@telefonica.com>
Mon, 9 Dec 2024 12:12:59 +0000 (13:12 +0100)
committergarciadeblas <gerardo.garciadeblas@telefonica.com>
Mon, 9 Dec 2024 12:13:29 +0000 (13:13 +0100)
Change-Id: I4390a205366a0bf5605b24e5076e753ef247f3f5
Signed-off-by: garciadeblas <gerardo.garciadeblas@telefonica.com>
osmclient/sol005/cluster.py
osmclient/sol005/osm_api_object.py

index 545844a..2665351 100644 (file)
@@ -105,7 +105,7 @@ class Cluster(GenericOSMAPIObject):
         self._logger.debug("")
         item = self.get(name)
         endpoint = f"{self._apiBase}/{item['_id']}/deregister"
-        self.create(name, {}, None, endpoint=endpoint)
+        self.delete(name, force, endpoint=endpoint)
 
     def upgrade(self, name, cluster_changes):
         """
index 523f422..9245a9b 100644 (file)
@@ -141,7 +141,7 @@ class GenericOSMAPIObject(ABC):
             raise NotFound(f"{self._logObjectName} '{name}' not found")
         raise NotFound(f"{self._logObjectName} '{name}' not found")
 
-    def delete(self, name, force=False):
+    def delete(self, name, force=False, endpoint=None):
         """Delete the Generic OSM API Object specified by name"""
         self._logger.debug("")
         self._client.get_token()
@@ -149,9 +149,9 @@ class GenericOSMAPIObject(ABC):
         querystring = ""
         if force:
             querystring = "?FORCE=True"
-        http_code, resp = self._http.delete_cmd(
-            "{}/{}{}".format(self._apiBase, item["_id"], querystring)
-        )
+        if not endpoint:
+            endpoint = f"{self._apiBase}/{item['_id']}"
+        http_code, resp = self._http.delete_cmd(f"{endpoint}{querystring}")
 
         if http_code == 202:
             print("Deletion in progress")