88 lines
6.1 KiB
Plaintext
88 lines
6.1 KiB
Plaintext
# =============================================================================
|
||
# documentations-api-v2 (documentation-api-v2) — пример переменных окружения
|
||
# Разбор: github.com/kelseyhightower/envconfig, config/config.go + pkg/postgres/gopg/postgres.go
|
||
# Префикса у переменных нет; вложенность не используется. Дефолт указан там, где он задан в коде.
|
||
# =============================================================================
|
||
|
||
# --- App ---------------------------------------------------------------------
|
||
APP_NAME=documentations-backend # default: documentations-backend
|
||
APP_VERSION=v1 # default: v1; используется как Sentry Release
|
||
ENVIRONMENT=stage # stage/preprod/production; идёт в Sentry Environment
|
||
NAMESPACE=documentations # k8s namespace, используется в бизнес-логике дисков
|
||
|
||
# --- HTTP-сервер -------------------------------------------------------------
|
||
API_ADDRESS=localhost:8000 # адрес прослушивания Fiber (и api_server, и filestream_server)
|
||
# API_FILESTREAM_ADDRESS=localhost:8050 # присутствует в шаблоне, но КОДОМ НЕ ЧИТАЕТСЯ (см. Замечания)
|
||
|
||
# --- PostgreSQL (pkg/postgres/gopg) ------------------------------------------
|
||
POSTGRES_ADDRESS=localhost
|
||
POSTGRES_PORT=5432
|
||
POSTGRES_DB=postgres
|
||
POSTGRES_USER=user
|
||
POSTGRES_PASSWORD=password
|
||
POSTGRES_POOL_SIZE=1 # в helm: POSTGRES_POOL_SIZE (в шаблоне встречается опечатка POSTGRES_POLL_SIZE — не читается)
|
||
ENABLE_SSL=0 # 1 → TLS к БД по сертификату из YC-PG-CERTIFICATE
|
||
ENABLE_SQL_QUERY=1 # логирование SQL-запросов
|
||
YC-PG-CERTIFICATE="" # PEM CA-сертификат PostgreSQL (имя с дефисами, читается через envconfig-тег)
|
||
# POSTGRES_EXTERNAL_PORT=6432 # только для docker-compose, приложением не читается
|
||
|
||
# --- Django / IAM (pkg/django) -----------------------------------------------
|
||
DJANGO_HOST=https://stage.sarex.io
|
||
DJANGO_BASIC_AUTH= # base64(login:password) для Basic-auth в Django и flows
|
||
DJANGO_ORIGINATOR=docs_stage # идентификатор источника для system-log/Django
|
||
|
||
# --- Внешние сервисы (base URL клиентов) -------------------------------------
|
||
DOCUMENTATION_URL=http://api-v2-service.documentations/ # self-URL, подставляется в workflow-задачи
|
||
WORKFLOW_URL=http://workflows-api-service.platform:8000/
|
||
WORKSPACE_URL=http://workspaces-backend-service.platform:8000/
|
||
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://system-log-api-service.platform:80
|
||
FLOWS_URL=
|
||
FILE_URL_EXTERNAL= # внешний URL для отдачи файлов
|
||
|
||
# --- S3 / MinIO (pkg/s3/minio) -----------------------------------------------
|
||
ENABLE_S3=0 # 1 → инициализировать S3-клиент
|
||
S3_SERVICE_ACCOUNT=/etc/sarex/yc-s3-storage/yc-s3-service-account.json # путь к JSON сервис-аккаунта
|
||
S3_SERVICE_ACCOUNT_STR= # альтернатива: JSON сервис-аккаунта строкой
|
||
|
||
# --- Публичные ссылки на документы -------------------------------------------
|
||
PUBLIC_LINK_HOST= # хост генерируемых публичных ссылок
|
||
DOCUMENT_PUBLIC_LINK_JWT_SECRET="" # HMAC-секрет JWT публичной ссылки
|
||
DOCUMENT_PUBLIC_LINK_JWT_EXPIRATION_MINUTES=5 # TTL публичной ссылки (uint8)
|
||
|
||
# --- Аутентификация ----------------------------------------------------------
|
||
PUBLIC_KEY="" # PKIX RSA public key (PEM) для проверки JWT sarex-backend
|
||
|
||
# --- BIM-логика --------------------------------------------------------------
|
||
USE_BIMV1_FOR_BIMV2=0 # использовать BIM v1 API вместо v2
|
||
LAST_MASTER_BIM=0 # граничные id для маршрутизации BIM-запросов
|
||
LAST_SLAVE_1_BIM=0
|
||
|
||
# --- Кеш / файловый стример --------------------------------------------------
|
||
READ_WRITE_TIMEOUT_FILE_STREAM=6h # Go duration
|
||
CACHE_DEFAULT_EXPIRATION=60s # Go duration
|
||
CACHE_CLEANUP_INTERVAL=60s # Go duration
|
||
USE_CACHE_IN_FILE_STREAMER=1 # bool
|
||
|
||
# --- Workflow-задачи ---------------------------------------------------------
|
||
WORKFLOWS_IMAGES_VERSION=develop # тег образов задач (develop/master)
|
||
WORKFLOWS_CONFIG_FILEPATH=.example.tasks_execution_config.json # default; в k8s — /etc/app/tasks_execution_config.json
|
||
CONTAINER_REGISTRY=cr.yandex/crp3ccidau046kdj8g9q # default; реестр образов задач
|
||
IS_CONVERTED_PDF_UPLOADING_TO_S3=true # default: true
|
||
|
||
# --- Наблюдаемость: Sentry + OpenTelemetry -----------------------------------
|
||
SENTRY_DSN=""
|
||
SENTRY_DEBUG=false
|
||
ENABLE_OBSERVABILITY=0 # bool; включает slog-хендлер и трассировку в БД
|
||
OBSERVABILITY_COLLECTOR_ENDPOINT=0 # endpoint OTLP-коллектора логов
|
||
TRACER_USE=false # default: false; включить OTEL-трейсинг Fiber
|
||
TRACER_HOST=localhost:4317 # default: localhost:4317
|
||
TRACER_USE_INSECURE=true # default: true
|
||
SERVICE_NAME=documentations-api-v2 # default: documentations-api-v2
|
||
TRACER_LOGGER_NAME=tracer_logger # default: tracer_logger
|