1.9 KiB
1.9 KiB
Runtime Consistency Checklist (v2)
Use this checklist when runtime/docs changes are made.
Compose and Runtime
docker-compose.ymlcontains only v2 default runtime services:web,nginx,postgres- optional
schedulerprofile service
docker-compose.dev.ymlis mutable (source bind mounts allowed for dev only).docker-compose.release.ymlis settings-focused and keeps release runtime immutable.
Image/Registry Strategy
webimage:registry.younerd.org/hoopscout/web:${APP_IMAGE_TAG:-latest}nginximage:registry.younerd.org/hoopscout/nginx:${NGINX_IMAGE_TAG:-latest}- optional scheduler image:
registry.younerd.org/hoopscout/scheduler:${APP_IMAGE_TAG:-latest}
Entrypoints
entrypoint.sh:- waits for PostgreSQL
- creates snapshot directories
- optionally runs
migrateandcollectstaticwhen booting gunicorn
scripts/scheduler.sh:- runs
run_daily_orchestrationloop - idle-sleeps when
SCHEDULER_ENABLED=0
- runs
Snapshot Lifecycle
- Extractor writes snapshots to
incoming. import_snapshotsvalidates + upserts into PostgreSQL.- Success => file moved to
archive. - Failure => file moved to
failed.
Source Identity Rule
Raw IDs are not global. Imported identities are namespaced by source:
Competition:(source_name, source_uid)Team:(source_name, source_uid)Player:(source_name, source_uid)
Legacy Isolation
LEGACY_PROVIDER_STACK_ENABLED=0by default.- With default setting:
apps.providersis not installed/providers/routes are not mounted- legacy provider settings are not required
Verification Commands
docker compose -f docker-compose.yml -f docker-compose.release.yml config
./scripts/verify_release_topology.sh
docker compose -f docker-compose.yml -f docker-compose.dev.yml run --rm web sh -lc "export PYTHONUSERBASE=/tmp/pyuser && python -m pip install --user -r requirements/dev.txt && python -m pytest -q"