Skip to content

docs(explorations): AI review extension architecture and decisions #241

docs(explorations): AI review extension architecture and decisions

docs(explorations): AI review extension architecture and decisions #241

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
backend-tests:
name: Backend Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install Poetry
run: pip install poetry
- name: Install backend dependencies
working-directory: backend
run: poetry install --no-interaction --no-ansi
- name: Run backend tests
working-directory: backend
run: poetry run pytest tests/ -v
plugin-tests:
name: Plugin Tests
runs-on: ubuntu-latest
strategy:
matrix:
plugin:
- bibliogon-plugin-audiobook
- bibliogon-plugin-export
- bibliogon-plugin-getstarted
- bibliogon-plugin-grammar
- bibliogon-plugin-help
- bibliogon-plugin-kdp
- bibliogon-plugin-kinderbuch
- bibliogon-plugin-ms-tools
- bibliogon-plugin-translation
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install Poetry
run: pip install poetry
- name: Install plugin dependencies
working-directory: plugins/${{ matrix.plugin }}
run: poetry install --no-interaction --no-ansi
- name: Run plugin tests
working-directory: plugins/${{ matrix.plugin }}
run: poetry run pytest tests/ -v
frontend-tests:
name: Frontend Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: "22"
cache: "npm"
cache-dependency-path: frontend/package-lock.json
- name: Install dependencies
working-directory: frontend
run: npm ci
- name: TypeScript type check
working-directory: frontend
run: npx tsc --noEmit
- name: Run Vitest
working-directory: frontend
run: npx vitest run
- name: Build
working-directory: frontend
run: npx vite build
pre-commit:
name: Pre-commit hooks
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install pre-commit
run: pip install pre-commit
- name: Run hooks on all files
run: pre-commit run --all-files --show-diff-on-failure
lint-and-type-check:
name: Backend ruff + mypy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install Poetry
run: pip install poetry
- name: Install backend dependencies
working-directory: backend
run: poetry install --no-interaction --no-ansi
- name: ruff check
working-directory: backend
run: poetry run ruff check app/
- name: mypy
working-directory: backend
run: poetry run mypy app/