Несекретные настройки из OpenBao: OPENBAO__APP__<ИМЯ> (единый механизм с arm-core) #22

Closed
opened 2026-10-07 17:12:48 +03:00 by aep · 0 comments
Owner

Проблема

Платформа РАИСА передаёт в под только секреты OpenBao (OPENBAO__*), обычные переменные окружения задать нельзя (07.10.2026). Парсеру в контуре сейчас ничего менять не нужно (NATS_ENABLED=true, DEBUG=false, PARSE_MAX_BYTES, PARSE_TIMEOUT_SECONDS — значения по умолчанию подходят), но без механизма их нельзя будет поменять в контуре вовсе (например, поднять таймаут разбора).

Решение (владелец, 07.10.2026)

Как в arm-core (RSHB/arm-core#44, там обоснование): любая настройка верхнего уровня может прийти как OPENBAO__APP__<ИМЯ>, например OPENBAO__APP__PARSE_TIMEOUT_SECONDS=300. Приоритет: обычный env → OPENBAO__APP__* → .env → значение по умолчанию. Неизвестное имя — ошибка при старте.

Что сделать

  1. Тот же источник настроек в api/src/core/config.py, что в arm-core#44 (код одинаковый в трёх сервисах).
  2. Тесты: значение из OPENBAO__APP__ применяется, env перекрывает, неизвестное имя → ошибка.
  3. api/.env.example, README: правило для контура.

Когда

После завершения агента Среза 3b (arm-core#36), вслед за arm-core#44. Приоритет ниже, чем у arm-core и scan-gateway: для первого запуска в контуре не блокирует.

Bounded-задача.

## Проблема Платформа РАИСА передаёт в под только секреты OpenBao (`OPENBAO__*`), обычные переменные окружения задать нельзя (07.10.2026). Парсеру в контуре сейчас **ничего** менять не нужно (`NATS_ENABLED=true`, `DEBUG=false`, `PARSE_MAX_BYTES`, `PARSE_TIMEOUT_SECONDS` — значения по умолчанию подходят), но без механизма их нельзя будет поменять в контуре вовсе (например, поднять таймаут разбора). ## Решение (владелец, 07.10.2026) Как в arm-core (RSHB/arm-core#44, там обоснование): любая настройка верхнего уровня может прийти как `OPENBAO__APP__<ИМЯ>`, например `OPENBAO__APP__PARSE_TIMEOUT_SECONDS=300`. Приоритет: обычный env → `OPENBAO__APP__*` → `.env` → значение по умолчанию. Неизвестное имя — ошибка при старте. ## Что сделать 1. Тот же источник настроек в `api/src/core/config.py`, что в arm-core#44 (код одинаковый в трёх сервисах). 2. Тесты: значение из `OPENBAO__APP__` применяется, env перекрывает, неизвестное имя → ошибка. 3. `api/.env.example`, README: правило для контура. ## Когда После завершения агента Среза 3b (arm-core#36), вслед за arm-core#44. Приоритет ниже, чем у arm-core и scan-gateway: для первого запуска в контуре не блокирует. Bounded-задача.
aep closed this issue 2026-10-07 17:42:30 +03:00
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: RSHB/arm-tabular-parser#22
No description provided.