The API deployable had no packaging of its own: its runtime deps lived only in the integration's dev group, so there was no way to deploy the service without dragging the test venv along. Package the API as a container image (Dockerfile, multi-stage slim build, non-root) with the deployable's own manifest api/requirements.txt, and run it via deploy/compose.yaml with the SQLite file on the named volume nestquest-db so recreating the container keeps household data. Secrets are supplied by the environment (ignored deploy/.env, example with placeholder names only). TLS/reverse proxy, Authentik wiring and network separation are later Feature 17 tasks; the port is bound to localhost until they land.
28 lines
529 B
Plaintext
28 lines
529 B
Plaintext
# Keep the image build context minimal: only api/ and the bundled
|
|
# custom_components/nestquest/core/ are copied (see the Dockerfile);
|
|
# everything else — VCS state, virtualenvs, tests, the frontend, and
|
|
# any local secrets or database files — never enters the build.
|
|
.git
|
|
.gitignore
|
|
.venv
|
|
**/__pycache__
|
|
**/*.py[cod]
|
|
.pytest_cache
|
|
**/*.db
|
|
**/*.db-wal
|
|
**/*.db-shm
|
|
# Local configuration — never baked into an image.
|
|
.env
|
|
**/.env
|
|
deploy
|
|
design
|
|
docs
|
|
frontend
|
|
orchestration_tests
|
|
scripts
|
|
templates
|
|
tests
|
|
uv.lock
|
|
hacs.json
|
|
*.md
|