Skip to content

Commit 10f5341

Browse files
committed
Fixing delete API. Raising exception when plugin has usages/analyses errors and deletion is not forced.
1 parent a6401b9 commit 10f5341

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

dataikuapi/dss/plugin.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ def list_usages(self, project_key=None):
145145
params = {}
146146
if project_key:
147147
params["projectKey"] = project_key
148-
return self.client._perform_json("POST", "/plugins/{pluginId}/actions/listUsages" % self.plugin_id, body=params)
148+
return self.client._perform_json("POST", "/plugins/{pluginId}/actions/listUsages".format(pluginId=self.plugin_id), body=params)
149149

150150
def prepare_delete(self):
151151
"""
@@ -160,7 +160,7 @@ def prepare_delete(self):
160160
:return: dict
161161
"""
162162

163-
return self.client._perform_json("POST", "/plugins/{pluginId}/actions/prepareDelete" % self.plugin_id)
163+
return self.client._perform_json("POST", "/plugins/{pluginId}/actions/prepareDelete".format(pluginId=self.plugin_id))
164164

165165
def delete(self, force=False):
166166
"""
@@ -177,9 +177,11 @@ def delete(self, force=False):
177177
params = {
178178
"force": force
179179
}
180-
ret = self.client._perform_json("POST", "/plugins/{pluginId}/actions/prepareDelete" % self.plugin_id,
180+
ret = self.client._perform_json("POST", "/plugins/{pluginId}/actions/delete".format(pluginId=self.plugin_id),
181181
body=params)
182-
return self.client.get_future(ret["jobId"])
182+
if "projectCount" in ret:
183+
raise Exception("Plugin has usages or analysis errors.")
184+
return self.client.get_future(ret.get("jobId", None))
183185

184186
########################################################
185187
# Managing the dev plugin's contents

0 commit comments

Comments
 (0)