name: Lint

on: [push, pull_request]

env:
  FORCE_COLOR: 1

jobs:
  build:
    runs-on: ubuntu-20.04

    steps:
      - uses: actions/checkout@v2

      - name: Cache
        uses: actions/cache@v2
        with:
          path: |
            ~/.cache/pip
            ~/.cache/pre-commit
          key:
            lint-v1-${{ hashFiles('**/setup.py') }}-${{
            hashFiles('**/.pre-commit-config.yaml') }}
          restore-keys: |
            lint-v1-

      - name: Set up Python
        uses: actions/setup-python@v2
        with:
          python-version: 3.8

      - name: Install dependencies
        run: |
          python -m pip install -U pip
          python -m pip install -U tox

      - name: Lint
        run: tox -e lint
        env:
          PRE_COMMIT_COLOR: always
