In the repository, click on Actions
and click on New workflow
Click on set up a workflow yourself
Name your workflow. E.g. generate-changelog.yml
Configure your workflow. Sample workflow below:
name: 'Generate Changelog'
on:
workflow_dispatch: # click the button on Github repo!
push:
branches:
- 'main'
jobs:
changelog:
name: Generate changelog
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Generate changelog
uses: orhun/git-cliff-action@v4
with:
config: cliff.toml
args: --verbose
env:
OUTPUT: CHANGELOG.md
GITHUB_REPO: ${{ github.repository }}
- name: Commit
run: |
git checkout main
git config user.name 'github-actions[bot]'
git config user.email 'github-actions[bot]@users.noreply.github.com'
set +e
git add CHANGELOG.md
git commit -m "docs: Update changelog"
git push <https://$>{{ secrets.GITHUB_TOKEN }}@github.com/${GITHUB_REPOSITORY}.git main
NOTES:
tag
, the tag
needs to be in this format: vX.X.X
(e.g. v0.5.0
)