name: Pre-commit auto-update
on:
  schedule:
    # Run on mondays at midnight
    - cron: "0 0 * * 1"

jobs:
  auto-update:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6.0.1

      - name: Set up Python
        uses: actions/setup-python@v6.1.0
        with:
          python-version: "3.x"

      - name: Install pre-commit
        run: pip install pre-commit

      - name: Run pre-commit autoupdate
        run: pre-commit autoupdate

      - name: Create Pull Request
        uses: peter-evans/create-pull-request@v8.0.0
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          branch: update/pre-commit-autoupdate
          title: Auto-update pre-commit hooks
          commit-message: Auto-update pre-commit hooks
          body: |
            Update versions of hooks in pre-commit
            configs to latest version
          labels: dependencies
