# ============================================================================
# sarex-subscriptions — пример переменных окружения (api + cron-задачи)
#
# Django-сервис уведомлений: HTTP-API (uwsgi) + две CronJob-задачи рассылки
# (run_notifications / run_immediately_notifications). Все компоненты
# используют один модуль настроек config.settings.production и общий набор
# переменных.
#
# Скопируйте нужные значения в config.env / .env соответствующего окружения.
# Переменные, помеченные (обяз.), обязательны для работы — без них процесс
# упадёт при старте либо при обращении к соответствующему сервису.
# bool в Django читается как строка: непустая строка = True (см. замечания).
# ============================================================================

# --- База данных PostgreSQL/PostGIS (api + cron) ----------------------------
# Движок — core.db.backends.postgis (GeoDjango), нужен PostGIS.
DATABASE_HOST=127.0.0.1        # (обяз.) хост PostgreSQL
DATABASE_PORT=5432             # (обяз.) порт PostgreSQL
DATABASE_NAME=subscriptions    # (обяз.) имя базы данных
DATABASE_USER=user             # (обяз.) пользователь БД
DATABASE_PASSWORD=password     # (обяз.) пароль пользователя БД

# --- Хранилище S3 / MinIO (api: static + media) -----------------------------
# STATICFILES_STORAGE и DEFAULT_FILE_STORAGE = S3Boto3Storage, поэтому креды
# фактически обязательны для корректной работы статики/медиа.
YC_S3_ACCESS_KEY_ID=access_key                          # (обяз.) access key
YC_S3_SECRET_ACCESS_KEY=secret_key                      # (обяз.) secret key
YC_S3_BUCKET_NAME=subscriptions                         # (обяз.) имя бакета
YC_S3_ENDPOINT_URL=https://storage.yandexcloud.net      # (обяз.) endpoint S3

# --- Внешние сервисы (в основном cron-рассылки) -----------------------------
SYSTEM_LOG_HOST=http://localhost:8888          # (обяз.) URL сервиса system-log
USER_SERVICE_HOST=http://localhost:8000        # (обяз.) URL сервиса пользователей (Django/ЛК)
USER_SERVICE_LOGIN=superuser                    # логин для авторизации в user-service (по умолч. "")
USER_SERVICE_PASSWORD=password                  # пароль для авторизации в user-service (по умолч. "")
ALLOWED_HOST_EMAIL=https://lk.sarex.io          # базовый URL для ссылок в письмах (по умолч. https://lk.sarex.io)

# --- Email через Mailgun (cron) ---------------------------------------------
IS_MAILGUN_USE=0                                             # использовать Mailgun (по умолч. True; 0 — выключить)
MAILGUN_API_KEY=                                            # API-ключ Mailgun (по умолч. "")
# MAILGUN_BASE_URL=https://api.mailgun.net/v3/mg.sarex.io   # базовый URL Mailgun API
# MAILGUN_EMAIL_FROM=hello@sarex.io                          # адрес отправителя

# --- Email через SMTP (cron; используется если задан хост) ------------------
SMTP_EMAIL_HOST=                                # хост SMTP (по умолч. None — SMTP отключён)
SMTP_EMAIL_PORT=                                # порт SMTP (по умолч. None)
# SMTP_EMAIL_FROM=hello@sarex.io                # адрес отправителя (по умолч. hello@sarex.io)

# --- Telegram (cron) --------------------------------------------------------
IS_USE_TELEGRAM=false                           # использовать Telegram (по умолч. True; см. замечание про bool)
TELEGRAM_BOT_TOKEN=                             # токен бота (по умолч. "")

# --- Трейсинг OpenTelemetry (api; необязательно) ----------------------------
# Блок включается, если USE_OTEL задана НЕПУСТОЙ строкой (даже "False" → вкл!).
# USE_OTEL=True                                  # включить OTEL-трейсинг и otel-логгер
# SERVICE_NAME=subscriptions                     # имя сервиса в трейсах (по умолч. subscriptions)
# TRACER_ENDPOINT=localhost:4375                 # адрес OTLP-коллектора (по умолч. localhost:4375)
# USE_INSECURE=True                              # подключение без TLS (та же логика bool, что и USE_OTEL)

# --- Инфраструктурные / вспомогательные (кодом приложения НЕ читаются) -------
# API_ADDRESS=8000               # задаётся в манифестах; порт uwsgi фиксирован в uwsgi.ini (0.0.0.0:8000)
# DJANGO_SETTINGS_MODULE=config.settings.production  # задаётся в entrypoint.sh / wsgi.py
# NEXUS_USERNAME=                # build-arg Dockerfile: доступ к приватному PyPI (nexus.infra.sarex.io)
# NEXUS_PASSWORD=                # build-arg Dockerfile: пароль к приватному PyPI
