name: Update README

on:
  push:
    branches:
      - master
  workflow_dispatch:

jobs:
  update-readme:
    name: Update README
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - uses: actions/create-github-app-token@v1
        id: app-token
        with:
          app-id: ${{ vars.TOKEN_ID }}
          private-key: ${{ secrets.TOKEN_PRIVATE_KEY }}

      - name: Prepare
        env:
          NVIM_TAG: stable
        run: |
          bash ./scripts/ci-install.sh

      - name: Check README
        run: |
          nvim -l scripts/update-readme.lua || echo 'Needs update'

      - name: Create Pull Request
        uses: peter-evans/create-pull-request@v6
        with:
          token: ${{ steps.app-token.outputs.token }}
          author: "nvim-treesitter-bot[bot] <157957100+nvim-treesitter-bot[bot]@users.noreply.github.com>"
          commit-message: "bot(readme): update"
          title: Update README
          body: "[beep boop](https://github.com/peter-evans/create-pull-request)"
          branch: update-readme-pr
          base: ${{ github.head_ref }}

      - name: Enable Pull Request Automerge
        env:
          GH_TOKEN: ${{ steps.app-token.outputs.token }}
        run: gh pr merge --rebase --auto update-readme-pr
