.github/workflows/changelog.yml
# From: https://github.com/hopsoft/stimulus_reflex/blob/master/.github/workflows/changelog.yml
name: Changelog
on:
workflow_dispatch:
release:
types: [created]
push:
branches:
- master
jobs:
build:
runs-on: ubuntu-latest
timeout-minutes: 4
if: "!contains(github.event.head_commit.message, '[nodoc]')"
steps:
- uses: actions/checkout@master
- name: Set up Ruby 3.0
uses: ruby/setup-ruby@v1
with:
ruby-version: 3.0
- uses: actions/cache@v2
with:
path: vendor/bundle
key: ${{ runner.os }}-changelog-gem-${{ hashFiles('**/Gemfile.lock') }}
restore-keys: |
${{ runner.os }}-changelog-gem-
- name: Create local changes
run: |
gem install github_changelog_generator -v "1.15.2"
github_changelog_generator -u ${{ github.repository_owner }} -p ${{ github.event.repository.name }} --token ${{ secrets.GITHUB_TOKEN }} --exclude-labels duplicate,question,invalid,wontfix,nodoc
- name: Commit files
run: |
git config --local user.email "github-actions@example.com"
git config --local user.name "GitHub Actions"
git commit -am "[nodoc] Update Changelog" || echo "No changes to commit"
- name: Push changes
uses: ad-m/github-push-action@master
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
branch: ${{ github.ref }}