Skip to content

Skip existing release artifacts when retrying mirror uploads - #4937

Merged
ewdurbin merged 1 commit into
mainfrom
ee/idempotent-release-mirror
Nov 5, 2026
Merged

ewdurbin merged 1 commit into
mainfrom
ee/idempotent-release-mirror

Conversation

@ewdurbin

@ewdurbin ewdurbin commented Nov 5, 2026

Copy link
Copy Markdown
Collaborator

A mirror upload can fail after some files for a release have already reached R2. Retrying then attempts to overwrite those immutable objects and can fail again.

This change makes the versioned mirror upload skip existing keys and upload only the missing files. It assumes a retry uses the same release artifacts. An existing file is kept even if its local checksum differs.

Tested against a local S3 server with a partially uploaded release. The first run preserved the existing file and uploaded the missing files. A second run made zero writes.

Use aws s3 sync --no-overwrite so a retry fills missing versioned objects and then reaches the latest installer step.

@sharkdp sharkdp left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you

@ewdurbin
ewdurbin merged commit aabbd38 into main Nov 5, 2026
19 checks passed
@ewdurbin
ewdurbin deleted the ee/idempotent-release-mirror branch November 5, 2026 19:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants