More upload code cleanup

This commit is contained in:
Kovid Goyal 2022-11-19 11:31:43 +05:30
parent b91eaa3b2a
commit 4080a09748
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C

View File

@ -291,20 +291,14 @@ class GitHub(Base): # {{{
if r.status_code not in (204, 404): if r.status_code not in (204, 404):
self.fail(r, f'Failed to delete {fname} from GitHub') self.fail(r, f'Failed to delete {fname} from GitHub')
if self.is_nightly: def upload_with_retries(path: str, desc: str, num_tries: int = 4, sleep_time: float = 5.0) -> None:
for fname in existing_assets:
self.info(f'Deleting {fname} from GitHub with id: {existing_assets[fname]}')
delete_asset(existing_assets[fname])
self.update_nightly_description(release['id'])
for path, desc in self.files.items():
self.info('')
fname = os.path.basename(path) fname = os.path.basename(path)
if self.is_nightly: if self.is_nightly:
fname = fname.replace(version, 'nightly') fname = fname.replace(version, 'nightly')
if fname in existing_assets: if fname in existing_assets:
self.info(f'Deleting {fname} from GitHub with id: {existing_assets[fname]}') self.info(f'Deleting {fname} from GitHub with id: {existing_assets[fname]}')
delete_asset(existing_assets[fname]) delete_asset(existing_assets[fname])
num_tries = 4 del existing_assets[fname]
for i in range(1, num_tries+1): for i in range(1, num_tries+1):
try: try:
r = self.do_upload(upload_url, path, desc, fname) r = self.do_upload(upload_url, path, desc, fname)
@ -323,7 +317,17 @@ class GitHub(Base): # {{{
asset_id = r.json()['id'] asset_id = r.json()['id']
self.info(f'Deleting {fname} from GitHub with id: {asset_id}') self.info(f'Deleting {fname} from GitHub with id: {asset_id}')
delete_asset(asset_id) delete_asset(asset_id)
time.sleep(5) time.sleep(sleep_time)
if self.is_nightly:
for fname in existing_assets:
self.info(f'Deleting {fname} from GitHub with id: {existing_assets[fname]}')
delete_asset(existing_assets[fname])
del existing_assets[fname]
self.update_nightly_description(release['id'])
for path, desc in self.files.items():
self.info('')
upload_with_retries(path, desc)
def clean_older_releases(self, releases: Iterable[Dict[str, Any]]) -> None: def clean_older_releases(self, releases: Iterable[Dict[str, Any]]) -> None:
for release in releases: for release in releases: