39 lines
1.0 KiB
YAML
39 lines
1.0 KiB
YAML
name: python + Bazel pre-commit checks
|
|
|
|
on:
|
|
push:
|
|
branches: [ main ]
|
|
pull_request:
|
|
branches: [ main ]
|
|
|
|
jobs:
|
|
pre-commit:
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
MYPY_CACHE_DIR: "${{ github.workspace }}/.cache/mypy"
|
|
RUFF_CACHE_DIR: "${{ github.workspace }}/.cache/ruff"
|
|
PRE_COMMIT_HOME: "${{ github.workspace }}/.cache/pre-commit"
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: 3.11
|
|
cache: pip
|
|
cache-dependency-path: pyproject.toml
|
|
- name: Install dependencies
|
|
run: python -m pip install ".[dev]"
|
|
- name: Cache pre-commit tools
|
|
uses: actions/cache@v3
|
|
with:
|
|
path: |
|
|
${{ env.MYPY_CACHE_DIR }}
|
|
${{ env.RUFF_CACHE_DIR }}
|
|
${{ env.PRE_COMMIT_HOME }}
|
|
key: ${{ runner.os }}-${{ hashFiles('.pre-commit-config.yaml') }}-linter-cache
|
|
- name: Run pre-commit checks
|
|
run: pre-commit run --all-files --verbose --show-diff-on-failure
|