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.
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.