name: CI on: push: branches: - '**' tags-ignore: - '**' pull_request: jobs: ci: runs-on: docker container: image: python:3.12-slim steps: - name: Checkout uses: actions/checkout@v4 - name: Install uv run: pip install --no-cache-dir uv - name: Install dependencies run: uv sync --frozen - name: Lint run: uvx ruff check app tests - name: Test run: uv run pytest - name: Build distribution run: uv build