Skip to content

Implement pre-commit, pyproject, ruff, mypy #30

Implement pre-commit, pyproject, ruff, mypy

Implement pre-commit, pyproject, ruff, mypy #30

Workflow file for this run

name: Linters
on:
pull_request:
push:
branches: [main]
workflow_dispatch:
jobs:
setup_linters:
name: Setup Linters
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: 3.x
- name: Cache pip dependencies
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
- name: Install requirements
run: pip install -r requirements.txt
pre-commit:
name: pre-commit
needs: setup_linters
runs-on: ubuntu-latest
steps:
- name: Run pre-commit
uses: pre-commit/action@v3.0.1
- name: Run pre-commit.ci
uses: pre-commit-ci/lite-action@v1.1.0
if: always()
mypy:
name: mypy
needs: setup_linters
runs-on: ubuntu-latest
steps:
- name: Run mypy
run: mypy "./custom_components/opnsense/" --install-types --non-interactive --config-file pyproject.toml