Skip to content

ci: better "Start release" workflow#4777

Open
Saviq wants to merge 5 commits intomainfrom
better-start-release
Open

ci: better "Start release" workflow#4777
Saviq wants to merge 5 commits intomainfrom
better-start-release

Conversation

@Saviq
Copy link
Contributor

@Saviq Saviq commented Mar 17, 2026

What's new?

"Start release" will now begin development on main.

How to test

Check out the test run on my fork, and the result in:

Checklist

  • Tests added and pass
  • Adequate documentation added
  • (optional) Added Screenshots or videos

@Saviq Saviq requested a review from a team as a code owner March 17, 2026 16:50
Copilot AI review requested due to automatic review settings March 17, 2026 16:50
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

Updates the “Start Release” GitHub Actions workflow to automate not only the RC tagging/branching steps, but also (when run from main) bumping main to the next ~dev development version immediately after starting the release.

Changes:

  • Makes sha optional and reorders steps (checkout before GPG import).
  • Adds Debian symbols release edits and consolidates staging/commit behavior for the RC start.
  • Adds a “Start development of next version” step that bumps versions and updates Debian/RPM changelogs on main.

Comment on lines +134 to +159
awk --include=inplace \
-v next_version='${{ steps.version.outputs.next_version }}' \
-v begin_pat='Begin development for ${{ steps.version.outputs.version }}' '
$0~begin_pat {
print " * Begin development for " next_version " release"
in_release=1
next
}
in_release && /ABI summary/ {
abi_summary=1
}
abi_summary && /bumped to/ {
gsub(/bumped to/, "unchanged at")
}
abi_summary && /^$/ {
in_release=0
abi_summary=0
}
{ print }
' debian/changelog

# Update the RPM changelog
awk --include=inplace \
-v version_pat='${{ steps.version.outputs.version }}~dev-1$' \
-v begin_pat='Begin development for ${{ steps.version.outputs.version }}' \
-v next_version='${{ steps.version.outputs.next_version }}' \
' rpm/mir.spec

git add CMakeLists.txt debian/changelog rpm/mir.spec
git commit -m "Start development for ${NEXT_VERSION} release"
Comment on lines 6 to 9
sha:
description: 'Commit-ish to release'
required: true
required: false
type: string
# Bump CMake version
sed --in-place -E 's/(VERSION\s+)[0-9]+\.[0-9]+\.[0-9]+/\1${{ steps.version.outputs.next_version }}/' CMakeLists.txt

# Add a Debian changelog entry
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