Инструкция описывает вывод виджета «GitLab. Пайплайны» на вкладке «Пайплайны» карточки микросервиса. Виджет показывает пайплайны репозитория того микросервиса, карточка которого открыта.

Один виджет обслуживает все микросервисы: идентификатор проекта GitLab виджет получает из контекста карточки, а не из собственной конфигурации.

Перед началом работы

Для выполнения инструкции подготовьте:

  • разрешения на создание виджетов и разрешение update:home-mapping-sets;
  • внешний сервис GitLab;
  • у сущностей микросервисов — параметр с числовым ID проекта GitLab, сопоставленный роли microservice_gitlab_project_id. В каноничной модели каталога это параметр gitlab_repository_id, который заполняет процесс создания микросервиса из шаблона или источник данных «GitLab: активность репозиториев».

Набор данных «GitLab: виджеты» создаёт готовые виджеты для обеих вкладок. Инструкция показывает, как настроить виджет самостоятельно, например для другой системы контроля версий или с другими параметрами.

Создание виджета

Создайте виджет с идентификатором проекта из контекста:

  1. Создайте виджет типа «GitLab. Пайплайны» с внешним сервисом GitLab.
  2. В поле «ID проекта» укажите {{ .context.repository.id }}.
  3. Сохраните виджет.

Главная передаёт виджету на вкладке карточки микросервиса следующие значения:

ПутьЗначение
.context.microservice.uuidUUID сущности микросервиса
.context.microservice.slugИдентификатор микросервиса
.context.microservice.nameНазвание микросервиса
.context.repository.idЗначение роли microservice_gitlab_project_id
.context.repository.urlЗначение роли microservice_repository

Контекст передаётся только на вкладках карточки микросервиса. Для дашбордов создайте отдельный виджет с конкретным ID проекта.

Заполнение слота виджета

Добавьте виджет в слот вкладки «Пайплайны»:

  1. Перейдите в раздел «Администрирование» → «Справочники» → «Правила маппинга» и откройте набор по умолчанию.
  2. На вкладке «Маппинг каталога» раскройте область «Микросервисы» и найдите блок «Виджеты».
  3. В поле «Виджет вкладки «Пайплайны»» выберите созданный виджет.
  4. Нажмите «Сохранить».

Вкладка «MRs» заполняется полем «Виджет вкладки «MRs»», например виджетом «GitLab. Запросы слияния» с тем же значением поля «ID проекта».

Проверка результата

Проверьте виджет на главной:

  1. Откройте главную → «Микросервисы» и выберите микросервис в таблице.
  2. Откройте вкладку «Пайплайны» в карточке микросервиса.

На вкладке отображаются пайплайны репозитория выбранного микросервиса. При выборе другого микросервиса виджет показывает пайплайны его репозитория.

Если на вкладке отображается «Раздел пока недоступен», слот виджета не заполнен. Если виджет не показывает данные, проверьте, что у микросервиса заполнен параметр, сопоставленный роли microservice_gitlab_project_id.