132 lines
6.4 KiB
Plaintext
132 lines
6.4 KiB
Plaintext
# =============================================================================
|
||
# documentations-api / documentations-filestream — пример переменных окружения
|
||
# =============================================================================
|
||
# Все переменные читаются напрямую из окружения процесса библиотекой
|
||
# kelseyhightower/envconfig (config/config.go). Префикса и вложенности НЕТ —
|
||
# имена плоские. Значения ниже — ориентир для локального запуска (аналог
|
||
# .docker/.env). Оба бинарника (api и filestreamer) используют один и тот же
|
||
# набор переменных.
|
||
|
||
# --- Адреса прослушивания ----------------------------------------------------
|
||
API_ADDRESS=0.0.0.0:6666 # порт основного API (cmd/api)
|
||
API_ADDRESS_FILE=0.0.0.0:7777 # порт файлового стримера (cmd/filestreamer)
|
||
|
||
# --- PostgreSQL --------------------------------------------------------------
|
||
POSTGRES_ADDRESS=127.0.0.1
|
||
POSTGRES_PORT=5432
|
||
POSTGRES_USER=user
|
||
POSTGRES_PASSWORD=password
|
||
POSTGRES_DB=documentations
|
||
POSTGRES_POOL_SIZE=10 # учитывается только в api; filestreamer жёстко использует 50
|
||
ENABLE_SSL=0 # 1 — TLS к БД, тогда нужен YC-PG-CERTIFICATE
|
||
# YC-PG-CERTIFICATE= # PEM CA-сертификат PostgreSQL (в проде — из секрета)
|
||
|
||
# --- S3 (объектное хранилище) ------------------------------------------------
|
||
ENABLE_S3=0 # в api при 0 сервис стартует без S3; в filestreamer S3 обязателен
|
||
S3_SERVICE_ACCOUNT=/etc/sarex/yc_s3_doc_account.json # путь к JSON сервис-аккаунта
|
||
# S3_SERVICE_ACCOUNT_STR= # альтернатива: сам JSON строкой
|
||
|
||
# --- Sarex backend (Django) --------------------------------------------------
|
||
DJANGO_HOST=https://stage.sarex.io
|
||
DJANGO_BASIC_AUTH= # basic-auth для системных вызовов Django
|
||
DJANGO_BASIC_AUTH_FOR_GET_USER= # отдельный basic-auth для получения пользователей
|
||
DJANGO_ORIGINATOR=docs_local
|
||
|
||
# --- Zitadel (опциональная аутентификация) -----------------------------------
|
||
USE_ZITADEL=0
|
||
ZITADEL_DOMAIN=idp.dev.stage.sarex.io
|
||
ZITADEL_ACCOUNT=/etc/sarex/zitadel/zitadel-account.json
|
||
|
||
# --- Внешние сервисы (базовые URL) -------------------------------------------
|
||
FILE_URL_EXTERNAL=https://stage-api.sarex.io/files
|
||
DOCUMENTATION_URL=http://localhost:8000/
|
||
WORKFLOW_URL=https://stage-api.sarex.io/workflows/api
|
||
WORKSPACE_URL=https://stage-api.sarex.io/worspace/api
|
||
WORKSPACE_V2_EXTERNAL_URL=https://stage.sarex.io/workspaces-v2/
|
||
WORKSPACE_BUNDLE_VERSION=v1
|
||
MARKS_PROCESSING_URL=http://marks-service.documentations:8000
|
||
BIM_API_URL=http://bim-api-service.bim-api-stage/
|
||
BIM_API_V2_URL=http://bim-core-api.platform.svc.cluster.local:8000/
|
||
BIM_API_URL_EXTERNAL=https://stage-api.sarex.io/bim
|
||
SYSTEM_LOG_URL=http://localhost:8888
|
||
FLOWS_URL=http://backend-service.proc.svc.cluster.local:8000
|
||
AUTOMATION_URL=http://automation-api-service.automation-stage.svc.cluster.local:8000
|
||
# TRANSMITTALS_BASE_URL=http://transmittal-service.documentations:8000 # опционально
|
||
|
||
# --- Публичные ссылки на документы -------------------------------------------
|
||
PUBLIC_LINK_HOST=https://document-link.stage.sarex.io
|
||
PUBLIC_KEY= # PEM RSA public key (PKIX) для проверки JWT
|
||
DOCUMENT_PUBLIC_LINK_JWT_SECRET= # секрет HMAC для JWT публичных ссылок/временных загрузок
|
||
DOCUMENT_PUBLIC_LINK_JWT_EXPIRATION_MINUTES=5
|
||
PUBLIC_LINK_FOLDER_CONNECTOR_ENABLED=1
|
||
|
||
# --- Подпись ссылок скачивания (signature-in-URL) ----------------------------
|
||
ENABLE_SIGNATURE_IN_URL=false # при true обязателен рабочий Valkey и SIGNATURE_SECRET_KEY
|
||
SIGNATURE_SECRET_KEY=
|
||
SIGNATURE_IN_URL_EXPIRATION_SECONDS=600
|
||
ENABLE_AUTH_JWT_IN_URL=true
|
||
|
||
# --- Valkey / Redis (кэши, кэш подписей) -------------------------------------
|
||
VALKEY_ADDR=localhost:6380 # host:port; пустая строка полностью отключает клиент
|
||
VALKEY_LOGIN=
|
||
VALKEY_PASSWORD=
|
||
VALKEY_HOST=
|
||
VALKEY_DB=0
|
||
VALKEY_CACHE_TTL=1h
|
||
VALKEY_SSL=false
|
||
VALKEY_SSL_CA_CERTS=
|
||
|
||
# --- Файловый стример / кэш --------------------------------------------------
|
||
READ_WRITE_TIMEOUT_FILE_STREAM=6h
|
||
USE_CACHE_IN_FILE_STREAMER=true
|
||
CACHE_DEFAULT_EXPIRATION=30s
|
||
CACHE_CLEANUP_INTERVAL=35s
|
||
|
||
# --- BIM / обработка ---------------------------------------------------------
|
||
USE_BIMV1_FOR_BIMV2=1
|
||
USE_BIM_INSERTER=1
|
||
USE_LEGACY_BIM_FLOW=0
|
||
LAST_MASTER_BIM=1541
|
||
LAST_SLAVE_1_BIM=5000
|
||
LAST_SLAVE_2_BIM=15000
|
||
CONVERT_DWG_TO_GEOJSON=true
|
||
CONVERT_DXF_TO_GEOJSON=true
|
||
IS_CONVERTED_PDF_UPLOADING_TO_S3=true
|
||
DELETE_S3D_AFTER_MESHOPT=false
|
||
WORKFLOW_IMAGES_VERSION=develop
|
||
WORKFLOWS_IMAGES_VERSION=develop
|
||
CONTAINER_REGISTRY=cr.yandex/crp3ccidau046kdj8g9q
|
||
WORKFLOWS_CONFIG_FILEPATH=.example.tasks_execution_config.json
|
||
|
||
# --- Штампы/маркировки: HTTP или RabbitMQ ------------------------------------
|
||
USE_MARKS_RABBITMQ=0 # 0 — ходить в MARKS_PROCESSING_URL по HTTP; 1 — через RabbitMQ
|
||
MARKS_RABBITMQ_HOST=
|
||
MARKS_RABBITMQ_PORT=
|
||
MARKS_RABBITMQ_USER=
|
||
MARKS_RABBITMQ_PASSWORD=
|
||
MARKS_RABBITMQ_API=
|
||
|
||
# --- Rate limit для /documents/metadata --------------------------------------
|
||
METADATA_RATE_LIMIT_ENABLED=true
|
||
METADATA_RATE_LIMIT_MAX_REQUESTS=10
|
||
|
||
# --- Почта (флаги; сама отправка идёт через внешние сервисы) ------------------
|
||
ENABLE_MAILGUN=true
|
||
ENABLE_SMTP=false
|
||
|
||
# --- Наблюдаемость -----------------------------------------------------------
|
||
ENVIRONMENT=stage
|
||
SENTRY_DSN=
|
||
SENTRY_DEBUG=0
|
||
NAMESPACE=local
|
||
ENABLE_SQL_QUERY=1 # логировать SQL-запросы (для локальной отладки)
|
||
TRACER_USE=false
|
||
TRACER_HOST=localhost:4317
|
||
TRACER_USE_INSECURE=true
|
||
TRACER_LOGGER_NAME=tracer_logger
|
||
SERVICE_NAME=documentations-api
|
||
SERVICE_NAME_FILESTREAM=filestream-api
|
||
|
||
# --- Только для интеграционных тестов (кодом приложения не читается) ----------
|
||
# KEY_JWT=example_jwt
|