/release-gem-action

Github action that bumps the version, generates the changelog, releases the gem, and creates a Github release

Primary LanguageShellMIT LicenseMIT

release-gem

Github action that bumps the version, generates the changelog, releases the gem, and creates a Github release,

This action uses the conventional_changelog gem to update the CHANGELOG.md file, and the bump gem to handle the version increments. It assumes that the repository is using conventional commits. The gem dependencies in the action are managed independently from the dependencies of the gem that is being released.

Feel free to use this action for gems outside the Pact Foundation, however, its intent is only for Pact Foundation gems, so if you want to make any changes, please fork it and maintain your own version.

Usage

In your workflow YAML file:

name: Release gem

on:
  repository_dispatch:
    types:
      - release-triggered

jobs:
  release:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
      with:
        fetch-depth: 0
    - uses: pact-foundation/release-gem@v0.0.11
      env:
        GEM_HOST_API_KEY: '${{ secrets.RUBYGEMS_API_KEY }}'
        GITHUB_TOKEN: '${{ secrets.GITHUB_TOKEN }}'
        INCREMENT: '${{ github.event.client_payload.increment }}'

You will need to create the RUBYGEMS_API_KEY secret yourself, however, the GITHUB_TOKEN is provided by default.