# Файл конфигурации Synapse Backupper
# Сгенерировано командой: synapse-backupper generate-config --lang ru

# Настройки подключения к PostgreSQL
pg:
  # host: строка — имя хоста или IP-адрес сервера PostgreSQL.
  host: "localhost"

  # port: целое число — порт сервера PostgreSQL.
  port: 5430

  # user: строка — имя пользователя PostgreSQL для резервного копирования.
  user: "synapse"

  # password: строка — пароль пользователя PostgreSQL.
  # Не сохраняйте настоящие пароли в системе контроля версий.
  password: "changeme"

  # database: строка — имя базы данных Synapse для резервного копирования.
  database: "postgres"

  # sslmode: строка — режим SSL PostgreSQL (disable, allow, prefer, require, verify-ca, verify-full).
  sslmode: "prefer"

  # exclude_tables: список строк — таблицы, которые следует пропустить при pg_dump.
  # По умолчанию исключается большая таблица одноразовых ключей для уменьшения размера дампа.
  exclude_tables:
    - "e2e_one_time_keys_json"

# Настройки расписания и хранения резервных копий
backup:
  # dir: строка — каталог для хранения зашифрованных файлов резервных копий.
  dir: "backups"

  # retention_days: целое число — сколько дней хранить резервные копии перед удалением.
  retention_days: 180

  # cron: строка — выражение cron для автоматического расписания резервного копирования.
  cron: "0 0 3 * * *"

# Идентификаторы схем шифрования
# pq_scheme: uint16 — идентификатор постквантовой схемы KEM.
#   0x0006 = ML-KEM-768 (NIST FIPS 203)
pq_scheme: 0x0006

# classical_scheme: uint16 — идентификатор классической схемы KEM.
#   0x0007 = X25519 ECDH
classical_scheme: 0x0007

# Пути к файлам открытых ключей для гибридного шифрования
# pq_public_key_path: строка — путь к PEM-файлу постквантового открытого ключа.
pq_public_key_path: ""

# classical_public_key_path: строка — путь к PEM-файлу классического открытого ключа.
classical_public_key_path: ""

# Настройки HTTP-сервера проверки состояния
healthz:
  # port: целое число — TCP-порт для эндпоинта /healthz.
  port: 8080

# Настройки журналирования
log:
  # level: строка — уровень детализации журнала (debug, info, warn, error).
  level: "info"
