Skip to content

Commit

Permalink
generate changelog
Browse files Browse the repository at this point in the history
  • Loading branch information
jmspit committed Mar 8, 2021
1 parent ef36a01 commit 2909796
Showing 1 changed file with 41 additions and 2 deletions.
43 changes: 41 additions & 2 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,35 @@ jobs:
echo ::set-output name=prerelease::true
fi
- name: Get previous release tag
id: get_previous_release
uses: oprypin/find-latest-tag@v1
with:
repository: jmspit/leanux.git
releases-only: true
regex: '^v\d+\.\d+\.\d+$'
run: echo "Previous release ${{ steps.get_previous_release.outputs.tag }}"

- name: Get release changelog
id: get_release_changelog
if: steps.check-tag.outputs.prerelease == 'false'
run:
export CHANGELOG="$(git --no-pager log ${{ steps.get_previous_release.outputs.tag }}..HEAD --first-parent --merges --date=short --pretty=format:' - %h %cd %an %t %s')"
CHANGELOG="${CHANGELOG//'%'/'%25'}"
CHANGELOG="${CHANGELOG//$'\n'/'%0A'}"
CHANGELOG="${CHANGELOG//$'\r'/'%0D'}"
echo "::set-output name=changelog::$(echo "$CHANGELOG")"

- name: Get pre-release changelog
id: get_release_changelog
if: steps.check-tag.outputs.prerelease == 'true'
run:
export CHANGELOG="$(git --no-pager log ${{ steps.get_previous_release.outputs.tag }}..HEAD --date=short --pretty=format:' - %h %cd %an %t %s')"
CHANGELOG="${CHANGELOG//'%'/'%25'}"
CHANGELOG="${CHANGELOG//$'\n'/'%0A'}"
CHANGELOG="${CHANGELOG//$'\r'/'%0D'}"
echo "::set-output name=changelog::$(echo "$CHANGELOG")"

- name: Create release
id: create_release
if: steps.check-tag.outputs.prerelease == 'false'
Expand All @@ -61,7 +90,12 @@ jobs:
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
body: Release ${{ github.ref }}
body: |
Release ${{ github.ref }}
Changes since ${{ steps.get_previous_release.outputs.tag }}:
$${steps.get_release_changelog.outputs.changelog}
draft: false
prerelease: false

Expand All @@ -74,7 +108,12 @@ jobs:
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
body: Release ${{ github.ref }}
body: |
Release ${{ github.ref }}
Changes since ${{ steps.get_previous_release.outputs.tag }}:
$${steps.get_release_changelog.outputs.changelog}
draft: false
prerelease: true

Expand Down

0 comments on commit 2909796

Please sign in to comment.