-
Notifications
You must be signed in to change notification settings - Fork 4
CI: Add automated changelog and GitHub Release to release pipeline #36
Copy link
Copy link
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Summary
The NuGet publish pipeline already triggers on master and tags. What's missing is an automated changelog generation and GitHub Release creation as part of the CI release flow.
Current State
The .github/workflows/build.yml pipeline has:
- ✅ Build & unit tests
- ✅ E2E tests
- ✅ NuGet publish (on
masteror tags) - ❌ GitHub Release creation
- ❌ Changelog generation
Proposed Changes
- Add a
releasejob to the CI pipeline that runs afterpublish, triggered only on tags (refs/tags/*) - Use git-cliff to generate a changelog from conventional commits
- Create a GitHub Release with the generated changelog body
- Add a
cliff.tomlconfig tuned for the dotnet-sdk commit style
Implementation Sketch
release:
name: GitHub Release
runs-on: ubuntu-latest
needs: publish
if: startsWith(github.ref, 'refs/tags/')
permissions:
contents: write
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Generate changelog
id: changelog
uses: orhun/git-cliff-action@v4
with:
config: cliff.toml
args: --latest --strip header
- name: Create GitHub Release
uses: softprops/action-gh-release@v2
with:
body: ${{ steps.changelog.outputs.content }}
generate_release_notes: falseNotes
- Changelog should only generate on tags (not every master push)
- Commit style in this repo should be reviewed to tune
cliff.tomlgroupings - NUGET_API_KEY secret already configured
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request