Skip to content

changerelease

Actions
Automatically update your GitHub Releases from CHANGELOG.md
v1.6.0
Latest
Star (28)

changerelease

Automatically update your GitHub Releases from CHANGELOG.md.

This tool expects that you follow the Keep a Changelog format.

To use it:

  1. Keep a Changelog
  2. Git tag your versions
  3. Let the changerelease GitHub Action automatically keep your GitHub Releases updated

changerelease screenshot

Use the GitHub Action

name: changerelease
on:
  workflow_dispatch: {}
  push:
    paths: [CHANGELOG.md]
    branches: [master]
    tags: ["*"]

jobs:
  sync:
    runs-on: ubuntu-latest
    steps:
    - uses: dropseed/changerelease@v1
      with:
        github_token: ${{ secrets.GITHUB_TOKEN }}
        # optional
        tag_prefix: v
        changelog: CHANGELOG.md

What if my changelog isn't in Markdown?

For changelogs written in reStructuredText or another syntax besides Markdown, you can run a conversion step before running changerelease. This can be a custom rendering script or something like pandoc to convert your changelog to Markdown. The only real expectation is that your version names are written in h2 headings (## {version_name}).

name: changerelease
on:
  workflow_dispatch: {}
  push:
    paths: [CHANGELOG.md]
    branches: [master]
    tags: ["*"]

jobs:
  sync:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2

    # Convert to markdown first
    # https://github.com/pandoc/pandoc-action-example
    - uses: docker://pandoc/core:2.14
      with:
        args: "CHANGELOG.rst -f rst -t markdown -o CR_CHANGELOG.md"

    - uses: dropseed/changerelease@v1
      with:
        github_token: ${{ secrets.GITHUB_TOKEN }}
        # optional
        tag_prefix: v
        changelog: CR_CHANGELOG.md
        remote_changelog: false

changerelease is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.

About

Automatically update your GitHub Releases from CHANGELOG.md
v1.6.0
Latest

changerelease is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.