forked from retoor/devplacepy
chore: consolidate runtime data layout under single data/ root directory
Migrate all runtime artifacts (database, uploads, VAPID keys, locks, bot state, container workspaces, zip staging) from scattered locations (`var/`, `devplacepy/static/uploads/`) into a unified `data/` directory. Update `config.py` as single source of truth with `DATA_PATHS` registry and `ensure_data_dirs()`, add `devplace migrate-data` CLI command with CRC verification and idempotent relocation, adjust `.dockerignore`, `.env.example`, `.gitignore`, `Dockerfile`, `Makefile`, `README.md`, `AGENTS.md`, `CLAUDE.md`, and all import paths in `attachments.py` to reference `config.UPLOADS_DIR`/`ATTACHMENTS_DIR` instead of computing from `STATIC_DIR`.
This commit is contained in:
+8
-7
@@ -4,15 +4,16 @@
|
||||
# Session signing key. CHANGE THIS for any real deployment.
|
||||
SECRET_KEY=change-me
|
||||
|
||||
# Database. Leave unset to use the shared project-root devplace.db (the Docker
|
||||
# app container bind-mounts ./ to /app, so it reads and writes the same file as
|
||||
# Database. Leave unset to use the shared data/devplace.db (the Docker app
|
||||
# container bind-mounts ./ to /app, so it reads and writes the same file as
|
||||
# `make dev`). Set only to point at a different SQLite file.
|
||||
# DEVPLACE_DATABASE_URL=sqlite:////app/devplace.db
|
||||
# DEVPLACE_DATABASE_URL=sqlite:////app/data/devplace.db
|
||||
|
||||
# Persistent runtime data (zip archives, container workspaces). Lives OUTSIDE the
|
||||
# package and is never served via /static. Defaults to <repo>/var. The docker
|
||||
# daemon must be able to bind-mount this dir for container /app mounts; point it
|
||||
# at a persistent volume in production.
|
||||
# Single root for ALL runtime data (DB, uploads, VAPID keys, locks, bot state,
|
||||
# zip/fork staging, container workspaces). Lives OUTSIDE the package and is never
|
||||
# served via /static. Defaults to <repo>/data. The docker daemon must be able to
|
||||
# bind-mount this dir for container /app mounts; point it at a persistent volume
|
||||
# in production. nginx also reads <DEVPLACE_DATA_DIR>/uploads to serve uploads.
|
||||
# DEVPLACE_DATA_DIR=/var/lib/devplace
|
||||
|
||||
# Container Manager (admin-only, enabled via docker-compose.containers.yml).
|
||||
|
||||
Reference in New Issue
Block a user