An action can create changelogs between tags
release_type
: {string}prerelease
orrelease
changelogs
: {string} generated changelogstag_name
: {string} git tag name, likev1.0.0
valid
: {boolean} is raw value a valid semverraw
: {string} raw valuemajor
: {number|null} majorminor
: number|null} minorpatch
: {number|null} patchis_prerelease
: {boolean|null} is prereleaseprerelease_name
: {string|null} prerelease name, like beta in v1.2.3-beta.4prerelease_number
: {number|null} prerelease number, like 4 in v1.2.3-beta.4build_number
: {number|null} build number, like 55555 in v1.2.3+55555version
:{string|null} version, like 1.2.3-beta.1 in v1.2.3-beta.1 or 1.2.3 in v1.2.3+4444
On every push
to a tag matching the pattern v*
on:
push:
# Sequence of patterns matched against refs/tags
tags:
- 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10
name: Create Release
jobs:
build:
name: Create Release
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- run: |
git fetch --prune --unshallow --tags
- name: Create changelogs
id: changelogs
uses: heineiuo/create-changelogs@master # 👀
- name: Create Release
id: create_release
uses: actions/create-release@latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: ${{ github.ref }}
body: ${{ steps.changelogs.outputs.changelogs }}
draft: false
prerelease: ${{ steps.changelogs.outputs.release_type == 'prerelease' }}