Skip to content

fix: handle pre-existing draft release in host job#116

Merged
eddietejeda merged 1 commit into
mainfrom
fix/release-duplicate-create
May 28, 2026
Merged

fix: handle pre-existing draft release in host job#116
eddietejeda merged 1 commit into
mainfrom
fix/release-duplicate-create

Conversation

@eddietejeda
Copy link
Copy Markdown
Contributor

Problem

When a release tag is pushed, the plan job calls dist host --steps=create which pre-creates the GitHub release as a draft. Later, the host job calls dist host --steps=upload --steps=release (which uploads artifacts and publishes the draft), then tries to also run gh release create, which fails with: 'a release with the same tag name already exists'.

Because host fails at that step, the custom-publish-homebrew job is skipped and the Homebrew tap is never updated. This is what happened with v0.3.3.

Fix

Replace the unconditional gh release create with a check: if the release already exists (the normal case), use gh release edit + gh release upload --clobber instead. If for some reason the release does not exist yet, fall back to gh release create as before.

To recover v0.3.3

After merging, manually re-run the custom-publish-homebrew job from the failed v0.3.3 workflow run in Actions.

The plan job calls `dist host --steps=create` which pre-creates the
GitHub release as a draft. When the host job later runs `gh release
create`, it fails with "a release with the same tag name already exists",
which blocks the custom-publish-homebrew job from running.

Fix by checking if the release already exists and using `gh release edit`
+ `gh release upload --clobber` instead of `gh release create` in that
case.
@sentry
Copy link
Copy Markdown

sentry Bot commented May 28, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@eddietejeda eddietejeda merged commit dd1b0f4 into main May 28, 2026
10 of 11 checks passed
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.

1 participant