Setup GitHub Action

  1. In the repository, click on Actions and click on New workflow

  2. Click on set up a workflow yourself

    Untitled

  3. Name your workflow. E.g. generate-changelog.yml

    Untitled

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

    Resources