thermograph/.forgejo/workflows/build.yml
emi f97df715d1 Standalone frontend: no-walk paths.py, own Dockerfile, own CI
paths.py drops the sibling-directory walk (frontend is now the repo
root: static/ and content/ are its own subdirectories, no more
sibling walk needed). New Dockerfile (much smaller deps -- fastapi,
uvicorn, httpx, jinja2, PyYAML -- no entrypoint script needed at all,
frontend has no migrations/pre-boot logic).

content/ is a committed starter copy for now, not yet real cross-repo
vendoring from thermograph-copy (that repo doesn't exist yet) -- noted
in paths.py's own docstring.

Real, known gap flagged rather than silently skipped: this process
cannot boot standalone (content.register() fetches the IndexNow key
from backend at import time with no retry, by design), so build.yml
only verifies the image builds, not a live boot+healthz check -- that
needs a genuine cross-repo contract-test job (booting a real backend
too), separate follow-up work. Same reason tests/ doesn't run here yet
(its conftest.py still imports backend's own test fixtures via a
sibling path that no longer exists) -- noted directly in the file.
2026-07-21 15:59:29 -07:00

34 lines
1.2 KiB
YAML

name: Build check
# Proves the split Dockerfile actually builds (repo-split Stage 7b) -- NOT a
# live boot+healthz check. content.register() fetches the IndexNow key from
# backend at import time with no retry (documented Stage 4 behavior,
# unchanged here); without a real, reachable backend this process crashes
# immediately on import, by design -- so a standalone boot check would either
# be fake (skip the real import path) or require checking out and booting
# thermograph-backend too. That's the real fix (a genuine cross-repo
# contract-test job, same pattern the original repo-split plan already
# scoped for the /cell + ETag contract), not yet built -- flagged as a real
# gap, not silently skipped. Full pytest-suite migration is separate,
# deferred follow-up work too, same category as thermograph-copy's deferred
# vendoring.
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
build:
runs-on: docker
steps:
- uses: actions/checkout@v4
- name: Install Docker CLI
run: |
apt-get update -qq
apt-get install -y -qq docker.io
- name: Build
run: docker build -t thermograph-frontend:ci .