Fix backup feature for local Windows development

- Add --no-reload flag to run_dev.py to prevent env var loss
- Configure SHOPDB_BACKUPS_ROOT in .env for Windows path
- Create local backups directory
- Document local dev setup in backup README
- Fix: Flask auto-reloader was spawning process without env vars
This commit is contained in:
Proudlock
2026-09-06 23:57:54 -04:00
parent 5eb5c83b23
commit 3e36b54101
2 changed files with 40 additions and 0 deletions

22
run_dev.py Normal file
View File

@@ -0,0 +1,22 @@
#!/usr/bin/env python
"""
Development server launcher for ShopDB.
Loads .env file and starts Flask development server.
"""
import os
import sys
from pathlib import Path
# Load .env BEFORE importing anything from Flask
from dotenv import load_dotenv
env_path = Path(__file__).parent / '.env'
load_dotenv(env_path)
print("Starting ShopDB Flask development server...")
print(f"DATABASE_URL: {os.environ.get('DATABASE_URL', 'NOT SET')[:60]}...")
print(f"SHOPDB_BACKUPS_ROOT: {os.environ.get('SHOPDB_BACKUPS_ROOT', 'NOT SET')}")
# Import and run Flask (--no-reload so env vars don't get lost)
from flask.cli import main as flask_main
sys.argv = ['flask', 'run', '--host=0.0.0.0', '--port=5001', '--no-reload']
flask_main()