docs: add deployment note to axis classification spec
CSV files committed to git, baked into Docker image — no rsync needed.
This commit is contained in:
@@ -280,6 +280,19 @@ that the function returns the axes dict unchanged and does not raise.
|
|||||||
All three tests use monkeypatching to inject CSV content as in-memory StringIO, following the existing
|
All three tests use monkeypatching to inject CSV content as in-memory StringIO, following the existing
|
||||||
pattern in `tests/test_political_compass.py` of patching module-level imports.
|
pattern in `tests/test_political_compass.py` of patching module-level imports.
|
||||||
|
|
||||||
|
## Deployment
|
||||||
|
|
||||||
|
The CSV files (`data/party_ideologies.csv` and `data/coalition_membership.csv`) are **static reference
|
||||||
|
data committed to git**. They are baked into the Docker image at build time alongside the application
|
||||||
|
code. No rsync or volume mount is needed.
|
||||||
|
|
||||||
|
The `.gitignore` excludes `data/*.db`, `data/*.bak`, `data/*.json` but not `data/*.csv`, so they can
|
||||||
|
be tracked without change to the ignore rules. The data volume mount (`DATA_DIR:/home/app/app/data`)
|
||||||
|
only contains the database file and does not overwrite the baked-in CSVs.
|
||||||
|
|
||||||
|
When party compositions change (e.g., a new party enters parliament), update the CSV, commit, and
|
||||||
|
redeploy. Typical frequency: once per parliament formation (~4 years).
|
||||||
|
|
||||||
## Open Questions
|
## Open Questions
|
||||||
|
|
||||||
None.
|
None.
|
||||||
|
|||||||
Reference in New Issue
Block a user