Files
stack/.gitea/workflows/ci.yml
kert 937430c4d0
Some checks failed
CI / lint-test (push) Failing after 0s
CI / skinny-install (api) (push) Successful in 35s
CI / skinny-install (aco) (push) Successful in 45s
CI / skinny-install (bib) (push) Successful in 31s
CI / skinny-install (bcda) (push) Successful in 35s
CI / skinny-install (cli) (push) Has been cancelled
CI / skinny-install (cms) (push) Has been cancelled
CI / skinny-install (conf) (push) Has been cancelled
CI / skinny-install (perf) (push) Has been cancelled
CI / skinny-install (pfs) (push) Has been cancelled
CI / skinny-install (rex) (push) Has been cancelled
CI / skinny-install (bls) (push) Has been cancelled
CI / skinny-install (ccw) (push) Has been cancelled
Deploy / build-scan-report (push) Has been cancelled
fix: skinny install uses --no-dev to avoid pulling marimo/dev deps
uv sync --extra aco was resolving the dev dependency group by default,
pulling marimo and 14 other dev packages. The skinny install test
should only install the declared extra and its transitive deps.

All 3 backends fixed (Gitea, GitHub, Woodpecker).
2026-03-25 02:11:09 -04:00

87 lines
2.4 KiB
YAML

# DO NOT EDIT — generated by gen_config.py from stack.toml
# Re-generate: uv run python dev/scripts/gen_config.py
name: CI
on:
push:
branches: ["**"]
pull_request:
jobs:
lint-test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: https://github.com/actions/checkout@v4
- name: Set up uv
run: curl -LsSf https://astral.sh/uv/install.sh | sh
env:
UV_INSTALL_DIR: /usr/local/bin
- name: Install dependencies
run: uv sync --dev
- name: Ruff check
run: uv run ruff check src/ tests/ --output-format=concise
- name: Ruff format
run: uv run ruff format --check src/ tests/
- name: Pytest
run: uv run pytest tests/ --cov=src --cov-report=term-missing --cov-fail-under=99 -q
- name: Validate generated config
run: uv run python dev/scripts/gen_config.py --check
- name: File failure issue
if: failure()
env:
GITEA_TOKEN: ${{ secrets.DEPLOY_TOKEN }}
run: |
uv sync --no-dev --quiet 2>/dev/null || true
uv run python -m api.diag.ci \
--workflow "CI" --job "lint-test" \
--run "${{ github.run_number }}" \
--sha "${{ github.sha }}" \
--ref "${{ github.ref }}" || true
skinny-install:
runs-on: ubuntu-latest
strategy:
matrix:
extra: [conf, aco, api, bcda, bib, bls, ccw, cli, cms, perf, pfs, rex]
steps:
- name: Checkout
uses: https://github.com/actions/checkout@v4
- name: Set up uv
run: curl -LsSf https://astral.sh/uv/install.sh | sh
env:
UV_INSTALL_DIR: /usr/local/bin
- name: Install stack[${{ matrix.extra }}]
run: uv sync --no-dev --extra ${{ matrix.extra }}
- name: Verify import
run: uv run python -c "import ${{ matrix.extra }}"
- name: Run module tests
run: |
if [ -d "tests/${{ matrix.extra }}" ]; then
uv run pytest "tests/${{ matrix.extra }}/" -x -q || true
fi
- name: File failure issue
if: failure()
env:
GITEA_TOKEN: ${{ secrets.DEPLOY_TOKEN }}
run: |
uv sync --no-dev --quiet 2>/dev/null || true
uv run python -m api.diag.ci \
--workflow "CI" --job "skinny-install" \
--run "${{ github.run_number }}" \
--sha "${{ github.sha }}" \
--ref "${{ github.ref }}" || true