Skip to content

Commit d3d010a

Browse files
author
Liora Milbaum
committed
refactor: RequestsResponse
1 parent 3f86d36 commit d3d010a

File tree

1 file changed

+17
-13
lines changed

1 file changed

+17
-13
lines changed

gitlab/client.py

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -748,42 +748,46 @@ def http_request(
748748
if 200 <= result.status_code < 300:
749749
return result.response
750750

751-
if (429 == result.status_code and obey_rate_limit) or (
752-
result.status_code in gitlab.const.RETRYABLE_TRANSIENT_ERROR_CODES
751+
if (429 == result.response.status_code and obey_rate_limit) or (
752+
result.response.status_code
753+
in gitlab.const.RETRYABLE_TRANSIENT_ERROR_CODES
753754
and retry_transient_errors
754755
):
755756
# Response headers documentation:
756757
# https://docs.gitlab.com/ee/user/admin_area/settings/user_and_ip_rate_limits.html#response-headers
757758
if max_retries == -1 or cur_retries < max_retries:
758759
wait_time = 2**cur_retries * 0.1
759-
if "Retry-After" in result.headers:
760-
wait_time = int(result.headers["Retry-After"])
761-
elif "RateLimit-Reset" in result.headers:
762-
wait_time = int(result.headers["RateLimit-Reset"]) - time.time()
760+
if "Retry-After" in result.response.headers:
761+
wait_time = int(result.response.headers["Retry-After"])
762+
elif "RateLimit-Reset" in result.response.headers:
763+
wait_time = (
764+
int(result.response.headers["RateLimit-Reset"])
765+
- time.time()
766+
)
763767
cur_retries += 1
764768
time.sleep(wait_time)
765769
continue
766770

767-
error_message = result.content
771+
error_message = result.response.content
768772
try:
769-
error_json = result.json()
773+
error_json = result.response.json()
770774
for k in ("message", "error"):
771775
if k in error_json:
772776
error_message = error_json[k]
773777
except (KeyError, ValueError, TypeError):
774778
pass
775779

776-
if result.status_code == 401:
780+
if result.response.status_code == 401:
777781
raise gitlab.exceptions.GitlabAuthenticationError(
778-
response_code=result.status_code,
782+
response_code=result.response.status_code,
779783
error_message=error_message,
780-
response_body=result.content,
784+
response_body=result.response.content,
781785
)
782786

783787
raise gitlab.exceptions.GitlabHttpError(
784-
response_code=result.status_code,
788+
response_code=result.response.status_code,
785789
error_message=error_message,
786-
response_body=result.content,
790+
response_body=result.response.content,
787791
)
788792

789793
def http_get(

0 commit comments

Comments
 (0)