name: Run linter (remove unused imports)

concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true

on:
  push:
    branches: [main]

env:
  FORCE_COLOR: 3
  NEXT_TELEMETRY_DISABLED: 1

# mqp - i generated a personal token to use for these writes -- it's unclear
# why, but the default token didn't work, even when i gave it max permissions

jobs:
  lint:
    name: Auto-lint
    runs-on: ubuntu-latest
    permissions:
      contents: read
    steps:
      - name: Checkout code
        uses: actions/checkout@v3
        with:
          token: ${{ secrets.FORMATTER_ACCESS_TOKEN }}
      - name: Restore cached node_modules
        uses: actions/cache@v2
        with:
          path: '**/node_modules'
          key: ${{ runner.os }}-${{ matrix.node-version }}-nodemodules-${{ hashFiles('**/yarn.lock') }}
      - name: Install missing dependencies
        run: yarn install --prefer-offline --frozen-lockfile
      - name: Run lint script
        run: yarn lint
      - name: Commit any lint changes
        if: always()
        uses: stefanzweifel/git-auto-commit-action@v4
        with:
          commit_message: Auto-remove unused imports
          branch: ${{ github.head_ref }}