43 lines
950 B
YAML
43 lines
950 B
YAML
name: Lint and check types
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: [ubuntu-latest]
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Set up Python 3.11
|
|
uses: https://github.com/actions/setup-python@v4
|
|
with:
|
|
python-version: "3.11"
|
|
|
|
- name: Install poetry
|
|
run: |
|
|
pip install pipx
|
|
pipx install poetry
|
|
|
|
- name: Validate the structure of the pyproject.toml
|
|
run: |
|
|
poetry check
|
|
|
|
- name: Verify that poetry.lock is consistent with pyproject.toml
|
|
run: |
|
|
poetry lock --check
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
poetry install
|
|
|
|
- name: Check code formatting by black
|
|
run: |
|
|
poetry run black . --check
|
|
|
|
- name: Lint code by ruff
|
|
run: |
|
|
poetry run ruff .
|
|
|
|
- name: Check types by pyright
|
|
run: |
|
|
poetry run pyright |