Skip to content

feat(release): add create-release-branch target#4587

Open
radTuti wants to merge 2 commits intotigera:masterfrom
radTuti:maestro-v0-create-release-branch
Open

feat(release): add create-release-branch target#4587
radTuti wants to merge 2 commits intotigera:masterfrom
radTuti:maestro-v0-create-release-branch

Conversation

@radTuti
Copy link
Contributor

@radTuti radTuti commented Mar 24, 2026

Summary

  • Add release branch CLI command for automated release branch creation
  • Add create-release-branch Makefile target
  • Refactor prep command to share branch creation logic with branch via branchBeforeCommon and branchActionCommon
  • Update RELEASING.md and hack/release/README.md

Usage

make create-release-branch STREAM=v1.43 CALICO_REF=release-v3.32 ENTERPRISE_REF=release-calient-v3.22

Or directly:

release branch --stream v1.43 --calico-ref release-v3.32 --enterprise-ref release-calient-v3.22

Use --local to skip pushing to remote.

@radTuti radTuti requested a review from a team as a code owner March 24, 2026 01:39
@radTuti radTuti requested review from a team and Copilot March 24, 2026 01:39
@marvin-tigera marvin-tigera added this to the v1.43.0 milestone Mar 24, 2026
@radTuti radTuti force-pushed the maestro-v0-create-release-branch branch from 6009212 to bcd4ff3 Compare March 24, 2026 01:43
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR adds a new release branch subcommand (and make create-release-branch target) to automate release-branch creation, while refactoring release prep to reuse the shared branch/config/commit logic.

Changes:

  • Add release branch command to create a release branch, update version configs, commit, tag, and optionally push.
  • Refactor release prep to share common branch creation + config update logic via shared helpers.
  • Add new flags (--stream, --calico-ref, --enterprise-ref) and update release documentation.

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 10 comments.

Show a summary per file
File Description
hack/release/branch.go New command + shared helpers for branching/config updates/commit/tag/push.
hack/release/prep.go Refactors prep to reuse shared branch/config/commit logic and uses shared cleanup.
hack/release/main.go Registers the new branch command with the CLI.
hack/release/flags.go Adds new flags for stream and component refs/prefix.
hack/release/checks.go Adds shared validation helpers for prep/branch.
hack/release/README.md Documents the new release branch command and Makefile target.
RELEASING.md Updates the release-branch preparation process docs to point at the new automation.
Makefile Adds create-release-branch target.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@radTuti radTuti force-pushed the maestro-v0-create-release-branch branch from bcd4ff3 to 2b1aeaa Compare March 24, 2026 15:27
@radTuti radTuti force-pushed the maestro-v0-create-release-branch branch from 2b1aeaa to 562ab74 Compare March 24, 2026 23:02
Enhance validateBranchRefs to check that the operator branch doesn't
already exist in the remote and that calico/enterprise refs exist as
branches or tags. Similarly enhance validatePrepRefs to verify version
tags exist in their respective remote repositories. Move validation
logic from prepBefore into validatePrepRefs for consistency.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants