name: CI on: push: branches: - '**' tags-ignore: - '**' pull_request: jobs: ci: runs-on: docker container: image: python:3.12-slim steps: - name: Install git run: | apt-get update apt-get install -y --no-install-recommends git ca-certificates rm -rf /var/lib/apt/lists/* - name: Checkout run: | git clone "${{ gitea.server_url }}/${{ gitea.repository }}.git" . git checkout "${{ gitea.sha }}" - 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