Skip to content
This repository was archived by the owner on Aug 11, 2020. It is now read-only.

Commit 3a7e654

Browse files
committed
improve method requests error reporting
1 parent bc64602 commit 3a7e654

File tree

1 file changed

+21
-4
lines changed

1 file changed

+21
-4
lines changed

paperspace/jobs.py

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -78,11 +78,28 @@ def method(category, method, params):
7878
params['workspaceFileName'] = os.path.basename(workspace_file)
7979
del params['workspace']
8080

81-
r = requests.request(http_method, config.CONFIG_HOST + path,
82-
headers={'x-api-key': config.PAPERSPACE_API_KEY},
83-
params=params, files=files)
81+
try:
82+
r = requests.request(http_method, config.CONFIG_HOST + path,
83+
headers={'x-api-key': config.PAPERSPACE_API_KEY},
84+
params=params, files=files)
85+
except requests.exceptions.RequestException as e:
86+
return requests_exception_to_error_obj(e)
87+
88+
try:
89+
return r.json()
90+
except ValueError:
91+
return status_code_to_error_obj(status_code)
92+
93+
94+
def requests_exception_to_error_obj(e):
95+
return { 'error': { 'message': str(e) } }
96+
8497

85-
return r.json()
98+
def status_code_to_error_obj(status_code):
99+
message = 'unknown'
100+
if status_code in requests.status_codes._codes:
101+
message = requests.status_codes._codes[status_code][0]
102+
return { 'error': { 'message': message, 'status': status_code } }
86103

87104

88105
def getJobs(params):

0 commit comments

Comments
 (0)