Skip to content

feat(workflows): migrate cut-release and goreleaser to shared release workflows - #86

Open
onuryilmaz wants to merge 1 commit into
mainfrom
feat/phase1-use-shared-release-workflows
Open

onuryilmaz wants to merge 1 commit into
mainfrom
feat/phase1-use-shared-release-workflows

Conversation

@onuryilmaz

Copy link
Copy Markdown
Contributor

Summary

Replaces the bespoke version-bump and binary-release workflows with callers of shared reusable workflows from cloudoperators/common.

Changes

  • cut-release.yaml: replaced the bespoke semver-bump-and-tag logic with a call to cloudoperators/common/shared-release.yaml. The shared workflow handles version computation, Makefile update, git commit, tag push, and GitHub Release creation — all in one place.
  • release.yaml: replaced the inline GoReleaser steps with a call to cloudoperators/common/shared-goreleaser.yaml.
  • Makefile: replaced VERSION ?= $(shell git describe --tags ...) with a static VERSION ?= 2.0.1. The shared-release workflow now owns version bumping via sed — the git-describe approach is superseded. The value is updated automatically on each release.

Behaviour changes

  • cut-release.yaml now also creates a GitHub Release (previously it only created a tag and triggered release.yaml separately). The two steps are unified in shared-release.yaml.
  • GoReleaser version is pinned to ~> v2 (unchanged from before).

Test plan

  • Verify cut-release workflow runs with patch/minor/major bump and correctly updates Makefile VERSION, commits, tags, and creates a GitHub Release
  • Verify release.yaml triggers on a v* tag push and GoReleaser successfully builds and attaches binaries
  • Confirm the shared workflows are available at cloudoperators/common@main before merging

Copilot AI balanced review requested due to automatic review settings October 15, 2026 12:05
@onuryilmaz
onuryilmaz requested review from a team as code owners October 15, 2026 12:05

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟡 Changes recommended

Tag pushes using GITHUB_TOKEN cannot trigger binary publishing, and the explicit dispatch fallback was removed.

1 open finding
What changed in this PR

Migrates cloudctl’s release automation to shared workflows in cloudoperators/common.

Changes:

  • Delegates version bumping and release creation to shared-release.yaml.
  • Delegates binary publishing to shared-goreleaser.yaml.
  • Sets a static Makefile version managed by release automation.
File Description
Makefile Replaces git-derived VERSION with 2.0.1.
.github/​workflows/​release.yaml Calls the shared GoReleaser workflow.
.github/​workflows/​cut-release.yaml Calls the shared release workflow with bump input and token.

🧠 Review effort: Balanced


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread .github/workflows/cut-release.yaml
… workflows

Signed-off-by: I313226 <I313226@users.noreply.github.com>
@onuryilmaz
onuryilmaz force-pushed the feat/phase1-use-shared-release-workflows branch from 316fd74 to 5d13610 Compare October 15, 2026 14:48
@onuryilmaz

Copy link
Copy Markdown
Contributor Author

@copilot review

1 similar comment
@onuryilmaz

Copy link
Copy Markdown
Contributor Author

@copilot review

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