Skip to content

Commit fb2b49f

Browse files
committed
build: github_releases can update older releases, and pauses to get the sorting right
1 parent ca550ca commit fb2b49f

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

ci/github_releases.py

+9-4
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import shlex
99
import subprocess
1010
import sys
11+
import time
1112

1213
import pkg_resources
1314
import requests
@@ -94,12 +95,12 @@ def get_releases(session, repo):
9495
:arrow_right:\xa0 To install: `python3 -m pip install coverage=={version}`
9596
"""
9697

97-
def release_for_relnote(relnote):
98+
def release_for_relnote(relnote, tag):
9899
"""
99100
Turn a release note dict into the data needed by GitHub for a release.
100101
"""
101102
relnote_text = relnote["text"]
102-
tag = version = relnote["version"]
103+
version = relnote["version"]
103104
body = RELEASE_BODY_FMT.format(
104105
relnote_text=relnote_text,
105106
version=version,
@@ -148,16 +149,20 @@ def update_github_releases(json_filename, repo):
148149
for relnote in relnotes:
149150
tag = relnote["version"]
150151
if not does_tag_exist(tag):
151-
continue
152-
release_data = release_for_relnote(relnote)
152+
tag = f"coverage-{tag}"
153+
if not does_tag_exist(tag):
154+
continue
155+
release_data = release_for_relnote(relnote, tag)
153156
exists = tag in releases
154157
if not exists:
155158
create_release(gh_session, repo, release_data)
159+
time.sleep(3)
156160
else:
157161
release = releases[tag]
158162
if release["body"] != release_data["body"]:
159163
url = release["url"]
160164
update_release(gh_session, url, release_data)
165+
time.sleep(3)
161166

162167
if __name__ == "__main__":
163168
update_github_releases(*sys.argv[1:3])

0 commit comments

Comments
 (0)