Skip to content

Commit 15c7126

Browse files
committed
Errors getting artifacts & runs should give exceptions
1 parent 18b95d1 commit 15c7126

File tree

1 file changed

+15
-30
lines changed

1 file changed

+15
-30
lines changed

simvue/client.py

Lines changed: 15 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -47,17 +47,14 @@ def get_run(self, run, system=False, tags=False, metadata=False):
4747
'tags': tags,
4848
'metadata': metadata}
4949

50-
try:
51-
response = requests.get(f"{self._url}/api/runs", headers=self._headers, params=params)
52-
except requests.exceptions.RequestException:
53-
return None
50+
response = requests.get(f"{self._url}/api/runs", headers=self._headers, params=params)
51+
response.raise_for_status()
5452

5553
if response.status_code == 200:
5654
return response.json()
5755

5856
return None
5957

60-
6158
def get_runs(self, filters, system=False, tags=False, metadata=False, format='dict'):
6259
"""
6360
Get runs
@@ -68,18 +65,16 @@ def get_runs(self, filters, system=False, tags=False, metadata=False, format='di
6865
'tags': tags,
6966
'metadata': metadata}
7067

71-
try:
72-
response = requests.get(f"{self._url}/api/runs", headers=self._headers, params=params)
73-
except requests.exceptions.RequestException:
74-
return None
68+
response = requests.get(f"{self._url}/api/runs", headers=self._headers, params=params)
69+
response.raise_for_status()
7570

7671
if response.status_code == 200:
7772
if format == 'dict':
7873
return response.json()
7974
elif format == 'dataframe':
8075
return to_dataframe(response.json())
8176
else:
82-
return None
77+
raise Exception('invalid format specified')
8378

8479
return None
8580

@@ -89,10 +84,8 @@ def list_artifacts(self, run, category=None):
8984
"""
9085
params = {'run': run}
9186

92-
try:
93-
response = requests.get(f"{self._url}/api/artifacts", headers=self._headers, params=params)
94-
except requests.exceptions.RequestException:
95-
return None
87+
response = requests.get(f"{self._url}/api/artifacts", headers=self._headers, params=params)
88+
response.raise_for_status()
9689

9790
if response.status_code == 200:
9891
return response.json()
@@ -105,21 +98,17 @@ def get_artifact(self, run, name, allow_pickle=False):
10598
"""
10699
params = {'run': run, 'name': name}
107100

108-
try:
109-
response = requests.get(f"{self._url}/api/artifacts", headers=self._headers, params=params)
110-
except requests.exceptions.RequestException:
111-
return None
101+
response = requests.get(f"{self._url}/api/artifacts", headers=self._headers, params=params)
102+
response.raise_for_status()
112103

113104
if response.status_code != 200:
114105
return None
115106

116107
url = response.json()[0]['url']
117108
mimetype = response.json()[0]['type']
118109

119-
try:
120-
response = requests.get(url, timeout=DOWNLOAD_TIMEOUT)
121-
except requests.exceptions.RequestException:
122-
return None
110+
response = requests.get(url, timeout=DOWNLOAD_TIMEOUT)
111+
response.raise_for_status()
123112

124113
content = Deserializer().deserialize(response.content, mimetype, allow_pickle)
125114
if content is not None:
@@ -133,10 +122,8 @@ def get_artifact_as_file(self, run, name, path='./'):
133122
"""
134123
params = {'run': run, 'name': name}
135124

136-
try:
137-
response = requests.get(f"{self._url}/api/artifacts", headers=self._headers, params=params)
138-
except requests.exceptions.RequestException:
139-
return None
125+
response = requests.get(f"{self._url}/api/artifacts", headers=self._headers, params=params)
126+
response.raise_for_status()
140127

141128
if response.status_code == 200:
142129
if response.json():
@@ -159,10 +146,8 @@ def get_artifacts_as_files(self,
159146
if category:
160147
params['category'] = category
161148

162-
try:
163-
response = requests.get(f"{self._url}/api/artifacts", headers=self._headers, params=params)
164-
except requests.exceptions.RequestException:
165-
return None
149+
response = requests.get(f"{self._url}/api/artifacts", headers=self._headers, params=params)
150+
response.raise_for_status()
166151

167152
if not path:
168153
path = './'

0 commit comments

Comments
 (0)