Support release notes generation (#1150)

Add github actions to automatically populate release notes on tag push.
This should make it easier to show what new functionality/improvements
have been added by populating the release page based on PRs and issues.
This commit is contained in:
Darragh Bailey 2020-10-03 20:52:31 +01:00 committed by GitHub
parent d4d82d9773
commit 6a9e604e45
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 45 additions and 4 deletions

View File

@ -1,11 +1,11 @@
name: ci
name: docker-image
on:
push:
branches:
- '**'
tags:
- 'v*'
- '*.*.*'
pull_request:
jobs:
@ -34,9 +34,9 @@ jobs:
VERSION=pr-${{ github.event.number }}
fi
TAGS="${DOCKER_IMAGE}:${VERSION}"
if [[ $VERSION =~ ^v[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
if [[ $VERSION =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
MINOR=${VERSION%.*}
MAJOR=${MINOR%.*}
MAJOR=v${MINOR%.*}
TAGS="$TAGS,${DOCKER_IMAGE}:${MINOR},${DOCKER_IMAGE}:${MAJOR},${DOCKER_IMAGE}:latest"
elif [ "${{ github.event_name }}" = "push" ]; then
TAGS="$TAGS,${DOCKER_IMAGE}:sha-${GITHUB_SHA::8}"

41
.github/workflows/release.yml vendored Normal file
View File

@ -0,0 +1,41 @@
name: release
on:
push:
tags:
- '*.*.*'
jobs:
release:
name: Create Release
runs-on: ubuntu-latest
steps:
-
name: Checkout code
uses: actions/checkout@v2
-
name: Prepare
id: prep
run: |
LAST_TAG=$(git describe --tags --abbrev=0 HEAD~1 2>/dev/null || true)
echo ::set-output name=previous_version::${LAST_TAG}
-
name: Changelog Generation
uses: CharMixer/auto-changelog-action@v1.1
with:
token: ${{ secrets.GITHUB_TOKEN }}
since_tag: ${{ steps.prep.outputs.previous_version }}
output: release_notes.md
-
name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
body_path: release_notes.md
draft: false
prerelease: false