name: Release on: workflow_dispatch: release: types: [published] jobs: build-release-notes: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 - name: Get previous tag id: prev_tag run: | PREV_TAG=$(git describe --tags --abbrev=0 $(git rev-list --tags --skip=1 --max-count=1)) echo "PREV_TAG=$PREV_TAG" >> $GITHUB_ENV - name: Get commits between tags id: changelog run: | git fetch --tags COMMITS=$(git log $PREV_TAG..${{ github.event.release.tag_name }} --pretty=format:"- %s (%an)") echo "$COMMITS" > commits.txt echo "COMMITS<> $GITHUB_ENV cat commits.txt >> $GITHUB_ENV echo "EOF" >> $GITHUB_ENV - name: Update Release Notes uses: softprops/action-gh-release@v2 with: tag_name: ${{ github.event.release.tag_name }} body: | ${{ env.COMMITS }} env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}