cleanup: убрать мёртвые env-переменные, консолидировать чтение в agent/_config.py
Удалены из кода: - JWT_SECRET — мёртвая (decode_token использует AUTH_SECRET_KEY) - SESSION_SECRET_KEY — заменён на прямой AUTH_SECRET_KEY - POSTGRES_URL — deprecated fallback, удалён из database.py и reencrypt.py Консолидировано чтение env-переменных agent-модуля: - Создан agent/_config.py — единый модуль для FASTAPI_URL, SERVICE_JWT, GRADIO_*, STORAGE_ROOT, AGENT_* (9 констант) - Все agent/*.py импортируют из _config вместо разрозненных os.getenv Удалены or-дефолты (безопасность): - agent/langgraph_setup.py — удалён hardcoded DB URL postgres:postgres - agent/langgraph_setup.py — удалены fallback API URL и model name - scripts/reencrypt.py — удалён hardcoded DB URL postgres:postgres - plugins/llm_analysis/service.py — удалены or-дефолты URL/app name .env.example — минимализация: - backend/.env.example: только 4 обязательные переменные - root/.env.example: обязательные + docker + SSO/админ Обновлены тесты (139 passed)
This commit is contained in:
@@ -1,23 +1,21 @@
|
||||
# ── Required: Secrets ──
|
||||
# Generate with: python -c "import secrets; print(secrets.token_urlsafe(32))"
|
||||
# ======================================================================
|
||||
# superset-tools — backend .env.example
|
||||
# Только обязательные переменные. Остальное настраивается через web UI.
|
||||
# ======================================================================
|
||||
|
||||
# ── Обязательно: секреты ──
|
||||
# JWT-ключ подписи токенов (backend + agent используют один)
|
||||
# Сгенерировать: python -c "import secrets; print(secrets.token_urlsafe(32))"
|
||||
AUTH_SECRET_KEY=change-me-to-a-random-secret
|
||||
# Generate with: python3 -c "import base64,os; print(base64.urlsafe_b64encode(os.urandom(32)).decode())"
|
||||
|
||||
# Fernet-ключ шифрования паролей подключений и API-ключей
|
||||
# Сгенерировать: python3 -c "import base64,os; print(base64.urlsafe_b64encode(os.urandom(32)).decode())"
|
||||
ENCRYPTION_KEY=
|
||||
|
||||
# ── Required: Database ──
|
||||
# PostgreSQL via docker-compose:
|
||||
# ── Обязательно: база данных ──
|
||||
# PostgreSQL
|
||||
DATABASE_URL=postgresql+psycopg2://postgres:postgres@localhost:5432/ss_tools
|
||||
# Отдельная БД для аутентификации (если не задана — требуется явно)
|
||||
AUTH_DATABASE_URL=postgresql+psycopg2://postgres:postgres@localhost:5432/ss_tools
|
||||
# Отдельная БД для задач (если не задана — DATABASE_URL)
|
||||
TASKS_DATABASE_URL=postgresql+psycopg2://postgres:postgres@localhost:5432/ss_tools
|
||||
# Run after pulling: cd backend && source .venv/bin/activate && alembic upgrade head
|
||||
|
||||
# ── Optional ──
|
||||
ALLOWED_ORIGINS=http://localhost:5173
|
||||
SESSION_SECRET_KEY=change-me-to-a-random-secret
|
||||
FEATURES__DATASET_REVIEW=true
|
||||
FEATURES__HEALTH_MONITOR=true
|
||||
APP_TIMEZONE=Europe/Moscow
|
||||
|
||||
# HSTS — включать только при настроенном HTTPS (nginx/ingress)
|
||||
# Включение без сертификатов сломает доступ к сайту!
|
||||
# FORCE_HTTPS=true
|
||||
|
||||
Reference in New Issue
Block a user