Skip to content

System design flaw study #40

System design flaw study

System design flaw study #40

Workflow file for this run

name: CI - Lint, Test, and Docs
on:
pull_request:
branches: [ main, fix-readthedocs, docs-sidebar-recipes-from-fix-readthedocs ]
push:
branches: [ main, fix-readthedocs, docs-sidebar-recipes-from-fix-readthedocs ]
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install poetry
poetry install --with dev,docs
- name: Lint with flake8
run: poetry run flake8 src/ tests/
test:
runs-on: ubuntu-latest
needs: lint
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install poetry
poetry install --with dev,docs
- name: Run tests
run: poetry run pytest tests/
docs:
runs-on: ubuntu-latest
needs: test
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install poetry
poetry install --with docs
- name: Build documentation
run: poetry run mkdocs build --strict
# Only allow merge if all jobs succeed (enforced by branch protection rules in GitHub settings)