Skip to content

ci(release): upload into an existing release instead of creating a second one - #981

Merged
u9g merged 1 commit into
mainfrom
jason/release-upload-existing
Sep 16, 2026
Merged

u9g merged 1 commit into
mainfrom
jason/release-upload-existing

Conversation

@u9g

@u9g u9g commented Sep 16, 2026

Copy link
Copy Markdown
Contributor

v2.18.7 shipped with no assets, and get.livekit.io/cli 404'd from 2026-09-15 20:30 UTC until v2.18.7 was re-released by hand.

The release was created from the GitHub UI, which creates the tag at publish time — so by the time the Release workflow ran, a published release already existed for the tag. gh release create does not attach to an existing release: it created a second, untagged one (untagged-26db48ab9a2d552b0c27, see https://github.com/livekit/livekit-cli/actions/runs/35020034514/job/104554235237) with all 7 archives, and exited 0. That draft was later deleted.

goreleaser looked the release up by tag first and uploaded into it, so it tolerated this. The gh rewrite in #961 lost that property, silently. Every release before v2.18.7 had its tag pushed by git, so the workflow was always the first to touch the release and the gap never showed.

This restores it: if a release already exists for the tag, upload into it; otherwise create the draft as before. The draft stays, so release notes and attached binaries are still reviewed by a human before publishing.

One gap this does not close: when the release is published from the UI, releases/latest points at a release with no assets for the couple of minutes the build takes. Pushing the tag with git and publishing the draft CI produces avoids that window entirely.

Homebrew and Docker were unaffected because neither reads GitHub release assets.

@u9g
u9g force-pushed the jason/release-upload-existing branch from 8e1239b to 16f4805 Compare September 16, 2026 12:27
@u9g u9g changed the title ci(release): upload assets to an already-published release instead of a new draft ci(release): publish the release directly instead of leaving a draft Sep 16, 2026
@u9g
u9g force-pushed the jason/release-upload-existing branch from 16f4805 to 935f5e4 Compare September 16, 2026 12:30
@u9g
u9g force-pushed the jason/release-upload-existing branch from 935f5e4 to cde1d8b Compare September 16, 2026 15:53
@u9g u9g changed the title ci(release): publish the release directly instead of leaving a draft ci(release): upload into an existing release instead of creating a second one Sep 16, 2026
@u9g
u9g merged commit 6c38ee5 into main Sep 16, 2026
25 checks passed
@u9g
u9g deleted the jason/release-upload-existing branch September 16, 2026 16:25
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