diff options
| author | Jack O'Connor <[email protected]> | 2022-11-20 17:08:49 -0800 |
|---|---|---|
| committer | Jack O'Connor <[email protected]> | 2022-11-20 17:18:35 -0800 |
| commit | 56b72b173825a4f82e20db0aa38754bfed45d8b6 (patch) | |
| tree | 0c2f79f3987c0e47a3881289810dfe47d87c759c /.github | |
| parent | 537e96747a7a7962a49fc68c3cc349c90646ac2f (diff) | |
add another retry loop to upload_github_release_asset.py
While we're at it, black format the .py files in this directory.
Diffstat (limited to '.github')
| -rw-r--r-- | .github/workflows/build_b3sum.py | 5 | ||||
| -rwxr-xr-x | .github/workflows/upload_github_release_asset.py | 20 |
2 files changed, 17 insertions, 8 deletions
diff --git a/.github/workflows/build_b3sum.py b/.github/workflows/build_b3sum.py index e487daf..f0e1787 100644 --- a/.github/workflows/build_b3sum.py +++ b/.github/workflows/build_b3sum.py @@ -9,8 +9,9 @@ import sys ROOT = Path(__file__).parent.parent.parent RUST_TARGET = sys.argv[1] -subprocess.run(["cargo", "build", "--target", sys.argv[1], "--release"], - cwd=ROOT / "b3sum") +subprocess.run( + ["cargo", "build", "--target", sys.argv[1], "--release"], cwd=ROOT / "b3sum" +) if platform.system() == "Windows": original_exe_name = "b3sum.exe" diff --git a/.github/workflows/upload_github_release_asset.py b/.github/workflows/upload_github_release_asset.py index c1cbf51..76340be 100755 --- a/.github/workflows/upload_github_release_asset.py +++ b/.github/workflows/upload_github_release_asset.py @@ -3,6 +3,7 @@ import github import os import sys +import time RETRIES = 10 @@ -10,7 +11,7 @@ g = github.Github(os.environ["GITHUB_TOKEN"]) tag_name = os.environ["GITHUB_TAG"] tag_prefix = "refs/tags/" if tag_name.startswith(tag_prefix): - tag_name = tag_name[len(tag_prefix):] + tag_name = tag_name[len(tag_prefix) :] assert len(sys.argv) == 2 asset_path = sys.argv[1] asset_name = os.path.basename(asset_path) @@ -34,13 +35,20 @@ except github.GithubException as github_error: else: raise -releases = list(repo.get_releases()) -for release in releases: - if release.tag_name == tag_name: - break -else: + +def get_release(): + for i in range(RETRIES): + releases = list(repo.get_releases()) + for release in releases: + if release.tag_name == tag_name: + return release + print(f"Release for tag {repr(tag_name)} not found. Retrying...") + time.sleep(1) raise RuntimeError("no release for tag " + repr(tag_name)) + +release = get_release() + print("Uploading " + repr(asset_path) + "...") for i in range(RETRIES): try: |
