Skip to content

Commit 01b3424

Browse files
committed
Delete datasource cascade
1 parent 49f1ab4 commit 01b3424

File tree

3 files changed

+13
-5
lines changed

3 files changed

+13
-5
lines changed

minds/datasources/datasources.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,11 +76,15 @@ def get(self, name: str) -> Datasource:
7676
raise exc.ObjectNotSupported(f'Wrong type of datasource: {name}')
7777
return Datasource(**data)
7878

79-
def drop(self, name: str):
79+
def drop(self, name: str, cascade=False):
8080
"""
8181
Drop datasource by name
8282
8383
:param name: name of datasource
84+
:param cascade: if True - remove from all minds, default: False
8485
"""
86+
data = None
87+
if cascade:
88+
data = {'cascade': True}
8589

86-
self.api.delete(f'/datasources/{name}')
90+
self.api.delete(f'/datasources/{name}', data=data)

minds/rest_api.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,12 @@ def get(self, url):
3737
_raise_for_status(resp)
3838
return resp
3939

40-
def delete(self, url):
41-
resp = requests.delete(self.base_url + url, headers=self._headers())
40+
def delete(self, url, data=None):
41+
resp = requests.delete(
42+
self.base_url + url,
43+
headers=self._headers(),
44+
json=data
45+
)
4246

4347
_raise_for_status(resp)
4448
return resp

tests/integration/test_base_flow.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ def test_datasources():
3131

3232
# remove previous object
3333
try:
34-
client.datasources.drop(example_ds.name)
34+
client.datasources.drop(example_ds.name, cascade=True)
3535
except ObjectNotFound:
3636
...
3737

0 commit comments

Comments
 (0)