Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

On tags, skip the upload if the files already exist on S3 #253

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

DilumAluthge
Copy link
Member

Description

If ${TAR_VERSION} does NOT match the regex ^\d*?\., then we always upload.

If ${TAR_VERSION} DOES match the regex, then we do a HEAD request to see if the files already exist. If they do exist, we don't upload. If they don't exist, we do upload.

Motivation

I'd like to be able to trigger new builds without worrying about overwriting existing tagged binaries on S3.

This is only relevant for tags.

@DilumAluthge
Copy link
Member Author

The treehashes need to be re-signed. However, I'll wait to re-sign them until after we've finished reviewing this PR and making any necessary changes.

@DilumAluthge
Copy link
Member Author

DilumAluthge commented Nov 16, 2022

In theory, we're vulnerable to TOCTOU here.

But we only start the upload_ job once we are holding the concurrency group lock, so we should be good, right?

@staticfloat
Copy link
Member

Why are we shy about replacing tagged binaries? We're not uploading directly to the julialang2 bucket, so I feel it's totally okay for us to overwrite them. This feels like a lot of complexity for unclear benefit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants