From 00fe990271844e92cfb3f8a480de4b0956e9e774 Mon Sep 17 00:00:00 2001 From: Nathan Moinvaziri Date: Sat, 29 Aug 2020 18:14:40 -0700 Subject: [PATCH 1/3] Added sleep 2s between upload retries. --- codecov/__init__.py | 1 + 1 file changed, 1 insertion(+) diff --git a/codecov/__init__.py b/codecov/__init__.py index e9645540..9c697d85 100644 --- a/codecov/__init__.py +++ b/codecov/__init__.py @@ -292,6 +292,7 @@ def retry_upload(url, request_method, retries=3, break_codes=(200,), **kwargs): res = request_method(url, **kwargs) if res.status_code in break_codes: return res + sleep(2) return res From ae8866d2557e338a44fdc4fa20dccb386ef5f1a3 Mon Sep 17 00:00:00 2001 From: Nathan Moinvaziri Date: Mon, 31 Aug 2020 13:23:59 -0700 Subject: [PATCH 2/3] Set default retries to 5 same as bash uploader. --- codecov/__init__.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/codecov/__init__.py b/codecov/__init__.py index 9c697d85..43847f06 100644 --- a/codecov/__init__.py +++ b/codecov/__init__.py @@ -287,7 +287,7 @@ def generate_toc(root): return str(res).strip() or "" -def retry_upload(url, request_method, retries=3, break_codes=(200,), **kwargs): +def retry_upload(url, request_method, retries=5, break_codes=(200,), **kwargs): for _ in range(retries): res = request_method(url, **kwargs) if res.status_code in break_codes: @@ -410,7 +410,7 @@ def main(*argv, **kwargs): advanced.add_argument("--tag", default=None, help="Git tag") advanced.add_argument( "--tries", - default=3, + default=5, type=int, help="Specify the total number of attempts to make when uploading coverage report", ) From 482200fb083bf7ca01ff4968fb79676bbda06265 Mon Sep 17 00:00:00 2001 From: Nathan Moinvaziri Date: Mon, 31 Aug 2020 13:55:57 -0700 Subject: [PATCH 3/3] Log retry attempts. --- codecov/__init__.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/codecov/__init__.py b/codecov/__init__.py index 43847f06..64063548 100644 --- a/codecov/__init__.py +++ b/codecov/__init__.py @@ -288,11 +288,13 @@ def generate_toc(root): def retry_upload(url, request_method, retries=5, break_codes=(200,), **kwargs): - for _ in range(retries): + wait_seconds = 2 + for i in range(retries): res = request_method(url, **kwargs) if res.status_code in break_codes: return res - sleep(2) + write(" Retrying {0}/{1} in {2}s..".format(i + 1, retries, wait_seconds)) + sleep(wait_seconds) return res