From 29f8894e4af4a50d7e96cd254469a414898159f3 Mon Sep 17 00:00:00 2001 From: Ryan Chen Date: Mon, 27 Oct 2025 12:01:16 -0400 Subject: [PATCH] Add configurable database path via environment variables MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add DATABASE_PATH environment variable support in app.py and aerich_config.py - DATABASE_PATH: For simple relative/absolute paths (default: database/raggr.db) - DATABASE_URL: For full connection strings (overrides DATABASE_PATH if set) - Create .env.example with all configuration options documented - Maintains backward compatibility with default database location Usage: # Use default path python app.py # Use custom path for development DATABASE_PATH=dev.db python app.py # Use full connection string DATABASE_URL=sqlite://custom/path.db python app.py 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .env.example | 28 ++++++++++++++++++++++++++++ aerich_config.py | 7 ++++++- app.py | 5 ++++- 3 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 .env.example diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..f739df2 --- /dev/null +++ b/.env.example @@ -0,0 +1,28 @@ +# Database Configuration +# Use DATABASE_PATH for simple relative/absolute paths (e.g., "database/raggr.db" or "dev.db") +# Or use DATABASE_URL for full connection strings (e.g., "sqlite://database/raggr.db") +DATABASE_PATH=database/raggr.db +# DATABASE_URL=sqlite://database/raggr.db + +# JWT Configuration +JWT_SECRET_KEY=your-secret-key-here + +# Paperless Configuration +PAPERLESS_TOKEN=your-paperless-token +BASE_URL=192.168.1.5:8000 + +# Ollama Configuration +OLLAMA_URL=http://192.168.1.14:11434 +OLLAMA_HOST=http://192.168.1.14:11434 + +# ChromaDB Configuration +CHROMADB_PATH=/path/to/chromadb + +# OpenAI Configuration +OPENAI_API_KEY=your-openai-api-key + +# Immich Configuration +IMMICH_URL=http://192.168.1.5:2283 +IMMICH_API_KEY=your-immich-api-key +SEARCH_QUERY=simba cat +DOWNLOAD_DIR=./simba_photos diff --git a/aerich_config.py b/aerich_config.py index faa1c28..1f80157 100644 --- a/aerich_config.py +++ b/aerich_config.py @@ -1,7 +1,12 @@ import os +# Database configuration with environment variable support +# Use DATABASE_PATH for relative paths or DATABASE_URL for full connection strings +DATABASE_PATH = os.getenv("DATABASE_PATH", "database/raggr.db") +DATABASE_URL = os.getenv("DATABASE_URL", f"sqlite://{DATABASE_PATH}") + TORTOISE_ORM = { - "connections": {"default": os.getenv("DATABASE_URL", "sqlite:///app/database/raggr.db")}, + "connections": {"default": DATABASE_URL}, "apps": { "models": { "models": [ diff --git a/app.py b/app.py index 2152fa8..2a8fac9 100644 --- a/app.py +++ b/app.py @@ -26,8 +26,11 @@ app.register_blueprint(blueprints.users.user_blueprint) app.register_blueprint(blueprints.conversation.conversation_blueprint) +# Database configuration with environment variable support +DATABASE_PATH = os.getenv("DATABASE_PATH", "database/raggr.db") + TORTOISE_CONFIG = { - "connections": {"default": "sqlite://database/raggr.db"}, + "connections": {"default": f"sqlite://{DATABASE_PATH}"}, "apps": { "models": { "models": [