Closed joshuarli closed 2 months ago
Although less than ideal, artifacts/merge action might be a temporary solution.
Although less than ideal, artifacts/merge action might be a temporary solution.
Thanks for showing me this, I'm trying it out here first: https://github.com/getsentry/sentry-python/pull/3545
I think it's a good solution as it keeps craft simpler and I like the obvious idea of a unified artifact named sha. The additional overhead isn't bad: 7 second job here (2 MB artifact, 2 artifacts merged) https://github.com/getsentry/sentry-python/actions/runs/10909857400/job/30279025731?pr=3545
16s job here (400MB+ artifact, 6 artifacts merged) https://github.com/getsentry/relay/actions/runs/10910443909/job/30281749726?pr=4042
Closing this as I've submitted multiple PRs to respective repos using actions/merge successfully.
todo (remaining ones that need upload-artifact merge):
github upload-artifact v3 is deprecated and v4 currently doesn't allow uploading different filepaths to the same artifact name
upstream issue: https://github.com/actions/upload-artifact/issues/478
currently craft expects the artifact name to be github.sha
this blocks:
i propose a quick fix to check for this as a prefix if
{sha}
isn't found (so that we don't break things):craft-{sha}-
also, this is annoying but there are going to be multiple artifact ziparchives now with
craft-{sha}-
for example symbolicator will need the following, and current code assumes just one artifact per revision