iac/apps/documentations/api-v2.env.example

88 lines
6.1 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# =============================================================================
# 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