Интеграции¶
Страница описывает внешние системы и контуры, с которыми работает app-metabase-embedding.
1. Metabase¶
Metabase является основной внешней системой сервиса.
Использование:
- чтение коллекций, dashboard и card metadata;
- чтение
embedding_params; - генерация guest embed JWT на стороне приложения;
- export SQL и структуры ресурсов;
- deploy snapshot обратно в Metabase.
Ключевые настройки:
metabase.base-urlmetabase.api-keymetabase.embedding.secretmetabase.collections.*metabase.export.*metabase.deploy.*
Основные риски эксплуатации:
- неверный
embedding.secretломает встраивание; - неверный
base-urlилиapi-keyломает runtime и export/deploy; - несогласованные root collection names приводят к пустым деревьям или config error.
2. LDAP¶
LDAP используется для аутентификации внутренних пользователей и чтения профиля сотрудника.
Использование:
- BasicAuth для внутренних сотрудников;
- чтение
uid,entryUUID,mail, display fields; - формирование LDAP user context;
- проверка admin whitelist через
app.ldap.adminLogins.
Ключевые настройки:
spring.ldap.*app.ldap.*
Важно:
- LDAP-группы не используются как источник авторизации;
- авторизация для внутренних пользователей строится на тегах в сервисной БД.
3. Routing DB¶
Routing DB содержит данные для token auth и on-prem выбора источника.
Использование:
- поиск пользователя и роли по токену;
- выбор
bms_id,role_id,role; - routing source по
X-BMS-DOMENиinstance_id.
Ключевые настройки:
app.datasource-routing.*
Важно:
- это не та же база, что
app.storage-db; - каждый
instanceIdдля on-prem должен существовать вapp.datasource-routing.sources.*.
4. Service Storage DB¶
Service storage DB хранит внутреннее состояние приложения.
Использование:
- role-based widget access;
- LDAP tags и assignments;
- deny-list подпапок;
- on-prem box mapping;
- favorites;
- Liquibase schema management.
Ключевые настройки:
app.storage-db.*
5. Jira¶
Jira используется в двух сценариях:
- создание analytics request;
- создание architect review task во время publish flow.
Ключевые настройки:
jira.base-urljira.auth-typejira.usernamejira.api-tokenjira.project-keyjira.architect-review.*
Важно:
- назначение исполнителя может идти через
assigneeAccountIdили через username fallback; - поведение архитектурного ревью по умолчанию управляется
jira.architect-review.enabled.
6. GitLab¶
GitLab используется для хранения export snapshot и создания merge request.
Использование:
- чтение target branch subtree;
- формирование commit actions;
- создание commit;
- создание merge request;
- чтение snapshot при deploy.
Ключевые настройки:
gitlab.base-urlgitlab.api-tokengitlab.project-idgitlab.target-branchgitlab.repo-path-prefixgitlab.source-branch-prefix
7. MkDocs и OpenAPI¶
Это не runtime-интеграция бизнес-логики, но это часть эксплуатационного контура документации.
Использование:
- MkDocs собирает web-страницы документации;
- OpenAPI является source of truth для публичного HTTP-контракта.
Важно:
- если endpoint опубликован для внешнего или внутреннего использования, он должен быть отражён:
- в коде контроллера;
- в OpenAPI схеме;
- в соответствующей docs-странице.