skyeweave/.forgejo/workflows/check.yaml

55 lines
1.6 KiB
YAML

on:
push:
branches: "**"
jobs:
pylint:
runs-on: docker
container: forgejo.neshweb.net/ci-docker-images/python-neshweb:3.11
steps:
- name: Checkout source code
uses: actions/checkout@v4
- name: Install packages
run: |
pip install -e .[lint] --disable-pip-version-check --no-cache-dir -q
python -m pip list --format=columns --disable-pip-version-check
- name: Run pylint
run: |
pylint --version
pylint **/*.py --exit-zero --rc-file pyproject.toml
mypy:
runs-on: docker
container: forgejo.neshweb.net/ci-docker-images/python-neshweb:3.11
steps:
- name: Checkout source code
uses: actions/checkout@v4
- name: Install packages
run: |
pip install -e .[typing] --disable-pip-version-check --no-cache-dir -q
python -m pip list --format=columns --disable-pip-version-check
- name: Run mypy
run: |
mypy --version
mypy .
tests:
runs-on: docker
strategy:
matrix:
python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ]
steps:
- name: Checkout source code
uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install packages
run: |
python --version
pip install -e .[testing] --disable-pip-version-check --no-cache-dir -q
python -m pip list --format=columns --disable-pip-version-check
- name: Run pytest
run: |
pytest