Skip to content

Commit 2e9621c

Browse files
committed
ci: add a job in publish extension workflow to update changelog release heading.
- Added a new job in the publish extension workflow to update the Changelog's `Unreleased` heading to the correct heading structure for a release version. Ie. Automically changes "## [Unreleased]" to "## [VERSION](GITHUB_RELEASE_URL) - DATE".
1 parent 690ab03 commit 2e9621c

1 file changed

Lines changed: 32 additions & 2 deletions

File tree

.github/workflows/publish-extension.yml

Lines changed: 32 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,36 @@ jobs:
9797
echo "✅ Successfully updated package version to $VERSION"
9898
fi
9999
100+
- name: Update Changelog Release Heading
101+
run: |
102+
VERSION="${{ needs.validate-release-version.outputs.version }}"
103+
TAG_NAME="${{ env.TAG_NAME }}"
104+
REPO="${{ github.repository }}"
105+
CURRENT_DATE=$(date +%Y-%m-%d)
106+
107+
# Check if CHANGELOG.md exists
108+
if [ ! -f "CHANGELOG.md" ]; then
109+
echo "⚠️ CHANGELOG.md not found, skipping changelog update"
110+
exit 0
111+
fi
112+
113+
# Check if Unreleased section exists
114+
if ! grep -q "^## \[Unreleased\]" CHANGELOG.md; then
115+
echo "ℹ️ No [Unreleased] section found in CHANGELOG.md, skipping update"
116+
exit 0
117+
fi
118+
119+
# Replace [Unreleased] with versioned release heading
120+
RELEASE_URL="https://github.com/${REPO}/releases/tag/${TAG_NAME}"
121+
NEW_HEADING="## [${VERSION}](${RELEASE_URL}) - ${CURRENT_DATE}"
122+
123+
sed -i "s/^## \[Unreleased\]/${NEW_HEADING}/" CHANGELOG.md
124+
125+
echo "✅ Updated CHANGELOG.md:"
126+
echo " [Unreleased] → [${VERSION}]"
127+
echo " Date: ${CURRENT_DATE}"
128+
echo " URL: ${RELEASE_URL}"
129+
100130
- name: Check for Changes
101131
id: git-check
102132
run: |
@@ -145,13 +175,13 @@ jobs:
145175
set -e # Exit on any error
146176
147177
# Stage and commit changes
148-
git add package.json || {
178+
git add package.json CHANGELOG.md || {
149179
echo "❌ Failed to stage files"
150180
exit 1
151181
}
152182
153183
# Create commit message
154-
COMMIT_MESSAGE="chore: version bump"
184+
COMMIT_MESSAGE="chore: version bump and update changelog"
155185
156186
git commit -m "$COMMIT_MESSAGE" || {
157187
echo "❌ Failed to commit changes"

0 commit comments

Comments
 (0)