ci(release): generate formatted markdown changelog and release notes for each release
Release / Build & Release (push) Canceled after 0s
Release / Build & Release (push) Canceled after 0s
This commit is contained in:
@@ -24,9 +24,7 @@ jobs:
|
|||||||
id: versioning
|
id: versioning
|
||||||
run: |
|
run: |
|
||||||
PREV_TAG=$(git tag -l "v*" --sort=-v:refname | head -n1)
|
PREV_TAG=$(git tag -l "v*" --sort=-v:refname | head -n1)
|
||||||
if [ -z "$PREV_TAG" ]; then
|
echo "Previous tag: $PREV_TAG"
|
||||||
PREV_TAG=""
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ "${{ github.ref }}" == refs/tags/v* ]]; then
|
if [[ "${{ github.ref }}" == refs/tags/v* ]]; then
|
||||||
TAG="${GITHUB_REF#refs/tags/}"
|
TAG="${GITHUB_REF#refs/tags/}"
|
||||||
@@ -48,17 +46,23 @@ jobs:
|
|||||||
fi
|
fi
|
||||||
echo "tag=$TAG" >> $GITHUB_OUTPUT
|
echo "tag=$TAG" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
# 生成有意义的变更日志内容
|
# 生成详细的 Release Changelog 正文
|
||||||
echo "### 🚀 What's Changed in ${TAG}" > release_notes.md
|
cat << NOTES > release_notes.md
|
||||||
echo "" >> release_notes.md
|
### 🚀 What's Changed in ${TAG}
|
||||||
|
|
||||||
|
NOTES
|
||||||
|
|
||||||
if [ -n "$PREV_TAG" ]; then
|
if [ -n "$PREV_TAG" ]; then
|
||||||
git log "${PREV_TAG}..HEAD" --pretty=format:"- %s (%h by @%an)" >> release_notes.md
|
git log "${PREV_TAG}..HEAD" --pretty=format:"- %s (%h by @%an)" >> release_notes.md
|
||||||
else
|
else
|
||||||
git log -n 10 --pretty=format:"- %s (%h by @%an)" >> release_notes.md
|
git log -n 10 --pretty=format:"- %s (%h by @%an)" >> release_notes.md
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "" >> release_notes.md
|
echo "" >> release_notes.md
|
||||||
echo "" >> release_notes.md
|
echo "" >> release_notes.md
|
||||||
|
if [ -n "$PREV_TAG" ]; then
|
||||||
echo "**Full Changelog**: https://github.com/${{ github.repository }}/compare/${PREV_TAG}...${TAG}" >> release_notes.md
|
echo "**Full Changelog**: https://github.com/${{ github.repository }}/compare/${PREV_TAG}...${TAG}" >> release_notes.md
|
||||||
|
fi
|
||||||
cat release_notes.md
|
cat release_notes.md
|
||||||
|
|
||||||
- name: Set up Go
|
- name: Set up Go
|
||||||
|
|||||||
Reference in New Issue
Block a user