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.
34 lines
1.2 KiB
YAML
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 .
|