# ============================================================================= # AMS-Sync — пример конфигурации (.env) # Версия: 1.0.0 # Скопируйте в .env и заполните значения. # # Сервис имеет два режима запуска: # - `run` — демон-потребитель Kafka (CMD контейнера), использует блоки # App / Kafka / Zitadel / Logger / Healthcheck (+ Auth); # - CLI — команды migrate / sync / diff (запускаются вручную), # дополнительно используют блоки Auth / User server / БД sarex. # Значения по умолчанию проставлены там, где они заданы в коде. # ============================================================================= # --- Приложение (без префикса) --- # LOCAL | STAGE | PREPROD | PRODUCTION ENVIRONMENT=LOCAL # Топик Kafka с событиями пользователей AMS_SYNC_TOPIC=ams-sync # ID организации-хоста в Zitadel (обязателен) HOST_ORGANIZATION_ID= # При True входящие model_created обрабатываются через import_user (с верификацией) VERIFY_USERS=False # --- Kafka (префикс KAFKA_) --- # JSON-массив адресов брокеров, напр. ["host:9091"] KAFKA_BOOTSTRAP_SERVERS= KAFKA_SASL_PLAIN_USERNAME= KAFKA_SASL_PLAIN_PASSWORD= # Путь к CA-сертификату для SSL-подключения к Kafka KAFKA_SSL_CAFILE= # PLAINTEXT | SSL | SASL_PLAINTEXT | SASL_SSL KAFKA_SECURITY_PROTOCOL=SASL_SSL # PLAIN | SCRAM-SHA-256 | SCRAM-SHA-512 KAFKA_SASL_MECHANISM=SCRAM-SHA-512 # --- Zitadel / AMS (префикс ZITADEL_) --- # Хост Zitadel (обязателен для адаптера пользователей) ZITADEL_HOST=https://idp.dev.stage.sarex.io # Service-токен доступа к API Zitadel (обязателен) ZITADEL_SERVICE_ACCESS_TOKEN= # ВНИМАНИЕ: переменную читают сразу несколько классов с разным типом # - адаптер пользователей ожидает int (минуты), напр. 10 # - адаптеры организаций/грантов ожидают строку, напр. "10m" # Задавайте int, иначе адаптер пользователей упадёт на разборе. ZITADEL_TIMEOUT=10 # Максимальный размер пачки при bulk-импорте ZITADEL_MAX_BATCH=2000 # Эндпоинты (обычно не переопределяются) ZITADEL_USERS_MANAGEMENT_ENDPOINT=management/v1/users ZITADEL_USERS_ENDPOINT=v2/users # --- Логирование (префикс LOG_) --- LOG_LEVEL=INFO # LOG_FORMAT=%(asctime)s [%(levelname)s]: %(message)s # --- TCP Healthcheck (префикс HEALTHCHECK_) --- HEALTHCHECK_HOST=0.0.0.0 HEALTHCHECK_PORT=8008 HEALTHCHECK_MAX_CONNECTIONS=10 HEALTHCHECK_REPLY=healthy # --- Auth: sarex-backend (префикс AUTH_) --- # Используется для получения JWT под админом (режим run и CLI) AUTH_HOST=https://stage.sarex.io AUTH_ADMIN_USERNAME= AUTH_ADMIN_PASSWORD= AUTH_AUTH_ENDPOINT=api/token/ # --- Sarex user server (префикс USER_SERVER_, только CLI) --- # Источник метадаты пользователя для миграции/синхронизации USER_SERVER_HOST=https://stage.sarex.io USER_SERVER_USERS_ENDPOINT=api/core/admin/users # --- База данных sarex-backend (префикс USER_DB_, только CLI) --- # Источник пользователей/компаний для команд migrate/sync/diff USER_DB_NAME=postgres USER_DB_USER=postgres USER_DB_PASSWORD=password USER_DB_HOST=127.0.0.1 USER_DB_PORT=5432 # Имена таблиц (обычно не переопределяются) USER_DB_USER_TABLE_NAME=base_baseuser USER_DB_COMPANYUSER_TABLE_NAME=core_companyuser USER_DB_COMPANY_TABLE_NAME=core_company USER_DB_ITER_SIZE=10000