Skip to content

Release v3.49.0: Large File Processing Fix #9

Release v3.49.0: Large File Processing Fix

Release v3.49.0: Large File Processing Fix #9

Workflow file for this run

name: Release Automation
on:
push:
tags:
- 'v*.*.*'
permissions:
contents: write
jobs:
release:
name: Create Release
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Extract version from tag
id: version
run: |
TAG=${GITHUB_REF#refs/tags/}
VERSION=${TAG#v}
echo "tag=$TAG" >> $GITHUB_OUTPUT
echo "version=$VERSION" >> $GITHUB_OUTPUT
echo "Version: $VERSION"
- name: Generate changelog
id: changelog
env:
TAG_NAME: ${{ steps.version.outputs.tag }}
REPO_NAME: ${{ github.repository }}
run: |
# Get previous tag
PREV_TAG=$(git describe --tags --abbrev=0 HEAD^ 2>/dev/null || echo "")
# Generate changelog from commits
if [ -z "$PREV_TAG" ]; then
# First release - get all commits
COMMITS=$(git log --pretty=format:"- %s (%h)" --reverse)
else
# Get commits since previous tag
COMMITS=$(git log ${PREV_TAG}..HEAD --pretty=format:"- %s (%h)" --reverse)
fi
# Create release notes file
{
echo "## What's New in ${TAG_NAME} 🚀"
echo ""
echo "### Changes"
echo "$COMMITS"
echo ""
echo "---"
echo ""
echo "## Full Changelog"
echo "See [CHANGELOG.md](https://github.com/${REPO_NAME}/blob/main/CHANGELOG.md) for complete version history."
echo ""
echo "## Installation"
echo '```bash'
echo "git clone https://github.com/${REPO_NAME}.git"
echo "cd data-normalization-platform"
echo "pnpm install"
echo "pnpm run dev"
echo '```'
echo ""
echo "## Documentation"
echo "- [README.md](https://github.com/${REPO_NAME}/blob/main/README.md)"
echo "- [VERSION_HISTORY.md](https://github.com/${REPO_NAME}/blob/main/VERSION_HISTORY.md)"
echo "- [API Documentation](https://github.com/${REPO_NAME}/blob/main/API_DOCUMENTATION.md)"
} > release-notes.md
echo "Generated changelog for ${TAG_NAME}"
- name: Create GitHub Release
uses: softprops/action-gh-release@v1
with:
name: Release ${{ steps.version.outputs.tag }}
body_path: release-notes.md
draft: false
prerelease: false
generate_release_notes: false
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Summary
run: |
echo "✅ Release ${{ steps.version.outputs.tag }} created successfully!"
echo "📦 View release: https://github.com/${{ github.repository }}/releases/tag/${{ steps.version.outputs.tag }}"