Skip to content

ci: consolidate release workflows into a single release.yml#5

Merged
Exonical merged 1 commit into
mainfrom
chore/consolidate-release-workflow
Jun 20, 2026
Merged

ci: consolidate release workflows into a single release.yml#5
Exonical merged 1 commit into
mainfrom
chore/consolidate-release-workflow

Conversation

@devin-ai-integration

Copy link
Copy Markdown

Summary

The repo had two workflows triggering on v* tags — the modern release.yml and the legacy upstream release.yaml — which both created draft GitHub releases and built binaries. During the v1.0.2 cut, release.yaml failed:

git checkout -b release/v1.0.2
git push -u origin release/v1.0.2   # ! [rejected] (already exists)

Its "Create release branch" step tries to create release/<version>, which collides whenever a release PR branch already uses that name (as ours did). It also pushes a stray bump version for release commit and produces a second duplicate draft release.

This removes release.yaml and makes release.yml the single source of truth. The only capability release.yaml had that release.yml lacked was the arm64 binary, so release.yml now builds both arches:

-        GOARCH: amd64
-      run: go build ... -o dist/wings_linux_amd64 wings.go
+      run: |
+        for arch in amd64 arm64; do
+          GOARCH="${arch}" go build ... -o "dist/wings_linux_${arch}" wings.go
+        done

checksums.txt now covers both binaries, and the draft release attaches wings_linux_amd64, wings_linux_arm64, and checksums.txt. Release stays draft: true for maintainer review before publishing (unchanged behavior).

No release/<version> branch is created anymore — that pattern was the source of the collision and the stray version-bump commits.

Note

The v1.0.2 release itself is already published (latest) with both binaries + checksums; the container image and Helm chart published successfully. This PR only fixes the workflow for future releases.

Link to Devin session: https://app.devin.ai/sessions/c6e2874ef8924e68a929e491c2018270
Requested by: @Exonical

Remove the legacy release.yaml (inherited from upstream) which duplicated the
release flow, created a stray release/<version> branch + version-bump commit, and
produced a second draft release. The branch-creation step also collides whenever
a release PR branch is named release/<version>.

release.yml is now the single source: it builds both linux/amd64 and linux/arm64,
emits a combined checksums.txt, and creates a draft release with generated notes
for maintainer review before publishing.
@devin-ai-integration

Copy link
Copy Markdown
Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment, CI, and merge conflict monitoring

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 1 additional finding.

Open in Devin Review

@Exonical
Exonical merged commit 4586465 into main Jun 20, 2026
9 checks passed
@Exonical
Exonical deleted the chore/consolidate-release-workflow branch June 20, 2026 05:57
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