@@ -15,13 +15,14 @@ jobs:
1515 outputs :
1616 new_version : ${{ steps.bump.outputs.new_version }}
1717 skipped : ${{ steps.bump.outputs.skipped }}
18+ last_tag : ${{ steps.bump.outputs.last_tag }}
1819 steps :
1920 - uses : actions/checkout@v4
2021 with :
2122 fetch-depth : 0
2223 token : ${{ secrets.GITHUB_TOKEN }}
2324
24- - name : Compute and write next rc version
25+ - name : Compute next rc version
2526 id : bump
2627 run : |
2728 set +e
@@ -33,17 +34,38 @@ jobs:
3334 echo "skipped=true" >> "$GITHUB_OUTPUT"
3435 exit 0
3536 fi
37+ LAST_TAG="$(git describe --tags --abbrev=0 2>/dev/null || echo "")"
3638 echo "new_version=$NEW_VERSION" >> "$GITHUB_OUTPUT"
39+ echo "last_tag=$LAST_TAG" >> "$GITHUB_OUTPUT"
3740 echo "skipped=false" >> "$GITHUB_OUTPUT"
3841
42+ - name : Generate release notes
43+ id : notes
44+ if : steps.bump.outputs.skipped != 'true'
45+ run : |
46+ NOTES="$(bash Scripts/generate-changelog.sh \
47+ "${{ steps.bump.outputs.last_tag }}" \
48+ HEAD \
49+ "${{ steps.bump.outputs.new_version }}")"
50+ # Write to file to safely pass multiline content
51+ echo "$NOTES" > /tmp/release-notes.md
52+ echo "notes_file=/tmp/release-notes.md" >> "$GITHUB_OUTPUT"
53+
3954 - name : Tag
4055 if : steps.bump.outputs.skipped != 'true'
4156 run : |
4257 git config user.name "github-actions[bot]"
4358 git config user.email "github-actions[bot]@users.noreply.github.com"
44- git tag "v ${{ steps.bump.outputs.new_version }}"
59+ git tag -a "v${{ steps.bump.outputs.new_version }}" -m "chore: release ${{ steps.bump.outputs.new_version }}"
4560 git push origin "v${{ steps.bump.outputs.new_version }}"
4661
62+ - name : Upload release notes
63+ if : steps.bump.outputs.skipped != 'true'
64+ uses : actions/upload-artifact@v6
65+ with :
66+ name : release-notes
67+ path : /tmp/release-notes.md
68+
4769 publish-windows :
4870 needs : bump-version
4971 if : ${{ needs.bump-version.outputs.skipped != 'true' }}
87109 name : ${{ needs.bump-version.outputs.new_version }}
88110 prerelease : true
89111 generate_release_notes : false
112+ body_path : artifacts/release-notes/release-notes.md
90113 files : artifacts/**/*
0 commit comments