Add Prepare Release GitHub Action for automated release kickoff#686
Add Prepare Release GitHub Action for automated release kickoff#686YunchuWang merged 2 commits intomainfrom
Conversation
There was a problem hiding this comment.
Pull request overview
Adds an automated “Prepare Release” GitHub Actions workflow to kick off SDK releases (version bump + changelog + branch/tag creation) and updates the release process documentation to describe this automation.
Changes:
- Introduces
.github/workflows/prepare-release.yamlto automate version calculation, changelog generation, and creation ofrelease/vX.Y.Z+vX.Y.Z. - Updates
doc/release_process.mdto document the recommended automated release preparation flow and reorganize publishing steps.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 5 comments.
| File | Description |
|---|---|
.github/workflows/prepare-release.yaml |
New workflow to bump eng/targets/Release.props, update CHANGELOG.md, and push a release branch/tag. |
doc/release_process.md |
Documents the new workflow and clarifies the end-to-end release/publishing process. |
|
Addressing review comments: Comment 1 (silent version parse fallback): This matches the pattern in the durabletask-js sibling workflow intentionally. The version in Release.props is tightly controlled so regex miss is very unlikely. If we want to add validation, it would make sense as a follow-up across both repos for consistency. Comment 2 (git commit fails on re-runs): Fixed - added Comment 3 (force-push risk on tags): The force-push pattern is intentional for re-run support and matches the JS sibling workflow. Since this is a manually-triggered Comment 4 (unused release_date): Fixed - removed the unused Comment 5 (doc wording mismatch): Fixed - updated wording in both the YAML workflow input description and |
Summary
What changed?
.github/workflows/prepare-release.yaml) to automate SDK release preparation, aligned with the existing workflow in durabletask-js.doc/release_process.mdto document the automated release workflow and restructure the release process documentation.Why is this change needed?
Prepare ReleaseGitHub Action that handles version bumping, changelog generation, branch/tag creation, and PR link generation. This PR brings the same automation to durabletask-dotnet for consistency and to reduce manual release toil.What the workflow does
eng/targets/Release.propsor accepts explicit version inputgit logdiff between latest tag and HEADRelease.props: SetsVersionPrefixandVersionSuffixCHANGELOG.md: Inserts new version section after## Unreleasedrelease/vX.Y.ZandvX.Y.ZIssues / work items
Project checklist
AI-assisted code disclosure (required)
Was an AI tool used? (select one)
If AI was used:
.github/workflows/prepare-release.yaml,doc/release_process.mdAI verification (required if AI was used):