when: - event: [push, pull_request, manual] variables: - &uv_image "ghcr.io/astral-sh/uv:python3.12-bookworm-slim" steps: install: image: *uv_image commands: - uv sync --all-extras --frozen lint: image: *uv_image commands: - | uv sync --all-extras --frozen uv run ruff check src/ tests/ uv run ruff format --check src/ tests/ depends_on: - install typecheck: image: *uv_image commands: - | uv sync --all-extras --frozen uv run mypy src/ depends_on: - install security-bandit: image: *uv_image commands: - | uv sync --all-extras --frozen uv run bandit -r src/ -f screen --skip B311 depends_on: - install security-audit: image: *uv_image commands: - | uv sync --all-extras --frozen uv run pip-audit depends_on: - install test: image: *uv_image commands: - | uv sync --all-extras --frozen uv run pytest --cov=src/mosaicstack_telemetry --cov-report=term-missing --cov-fail-under=85 depends_on: - install