diff options
author | 2022-08-12 17:46:27 +0200 | |
---|---|---|
committer | 2022-08-12 17:46:27 +0200 | |
commit | ff9633d189ba37aa8c80cd8d168cc259f5ba21b3 (patch) | |
tree | d46883f757e7fbf8ea6af9df8942213f2062b8ff /static-builds | |
parent | Merge pull request #742 from python-discord/github-artifacts (diff) |
Raise Static Build After Waiting
Adds a missing raise in the static build for situations where everything
was successful, but the build time passed the deadline specified by the
site API.
Signed-off-by: Hassan Abouelela <[email protected]>
Diffstat (limited to 'static-builds')
-rw-r--r-- | static-builds/netlify_build.py | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/static-builds/netlify_build.py b/static-builds/netlify_build.py index a473bd91..7143a19a 100644 --- a/static-builds/netlify_build.py +++ b/static-builds/netlify_build.py @@ -15,6 +15,18 @@ from urllib import parse import httpx + +def raise_response(response: httpx.Response) -> None: + """Raise an exception from a response if necessary.""" + if response.status_code // 100 != 2: + try: + print(response.json()) + except json.JSONDecodeError: + pass + + response.raise_for_status() + + if __name__ == "__main__": owner, repo = parse.urlparse(os.getenv("REPOSITORY_URL")).path.lstrip("/").split("/")[0:2] @@ -29,14 +41,7 @@ if __name__ == "__main__": ]) print(f"Fetching download URL from {download_url}") response = httpx.get(download_url, follow_redirects=True) - - if response.status_code // 100 != 2: - try: - print(response.json()) - except json.JSONDecodeError: - pass - - response.raise_for_status() + raise_response(response) # The workflow is still pending, retry in a bit while response.status_code == 202: @@ -44,6 +49,7 @@ if __name__ == "__main__": time.sleep(10) response = httpx.get(download_url, follow_redirects=True) + raise_response(response) url = response.json()["url"] print(f"Downloading build from {url}") zipped_content = httpx.get(url, follow_redirects=True) |