Skip to content

feat(enrich): measure html maintext parallel shadow branch #540

feat(enrich): measure html maintext parallel shadow branch

feat(enrich): measure html maintext parallel shadow branch #540

Workflow file for this run

name: ci
on:
push:
pull_request:
jobs:
test:
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: "3.14"
allow-prereleases: true
- name: Install system dependencies (Pillow build)
run: |
sudo apt-get update
sudo apt-get install -y --no-install-recommends \
build-essential \
pkg-config \
libjpeg-dev \
zlib1g-dev \
libpng-dev \
libtiff-dev \
libfreetype6-dev \
liblcms2-dev \
libwebp-dev \
libopenjp2-7-dev
- name: Set up uv
uses: astral-sh/setup-uv@v7
with:
enable-cache: true
- name: Install dependencies (frozen)
run: uv sync --frozen --group dev
- name: Lint
run: uv run ruff check .
- name: Test
run: uv run coverage run -m pytest
- name: Coverage JSON
run: uv run coverage json -o coverage.json
- name: Refactor audit
run: uv run cremona scan --coverage-json coverage.json --fail-on-regression
- name: Upload refactor audit report
if: always()
uses: actions/upload-artifact@v4
with:
name: refactor-audit
path: output/refactor-audit/
if-no-files-found: ignore
docker-runtime:
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build runtime image
uses: docker/build-push-action@v6
with:
context: .
target: runtime
load: true
tags: recoleta:runtime-ci
cache-from: type=gha
cache-to: type=gha,mode=max
- name: Smoke CLI entrypoint
run: docker run --rm recoleta:runtime-ci --help
- name: Smoke doctor entrypoint
run: docker run --rm recoleta:runtime-ci doctor --help