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

В примере используется каталог со следующими ресурсами:

  • «Продукты» — системы с параметрами «Домен» (domain) и «Статус» (status);
  • «Сервисы» — микросервисы с параметрами «Язык» (lang) и «Репозиторий» (repo_url);
  • «Стенды» — окружения с параметрами «Тип стенда» (stand_type) и «Домен» (base_domain);
  • «Workloads» — развёртывания с параметрами replicas и image.

Ресурсы связаны связями «Продукт — сервис», «Сервис — workload» и «Workload — стенд».

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

Для выполнения инструкции требуются разрешения create:home-mapping-sets, update:home-mapping-sets, а также разрешения на просмотр ресурсов, связей ресурсов, процессов и виджетов, чтобы в форме заполнялись списки выбора.

Соответствие ресурсов ролям

Составьте таблицу соответствия ресурсов, связей и параметров каталога ролям главной. Для примера:

РольОбъект каталога
systemРесурс «Продукты»
system_domainПараметр domain ресурса «Продукты»
system_lifecycleПараметр status ресурса «Продукты»
microserviceРесурс «Сервисы»
microservice_languageПараметр lang ресурса «Сервисы»
microservice_repositoryПараметр repo_url ресурса «Сервисы»
contains_serviceСвязь «Продукт — сервис»
deploymentРесурс «Workloads»
deployment_replicasПараметр replicas ресурса «Workloads»
deployment_image_tagПараметр image ресурса «Workloads»
has_deploymentСвязь «Сервис — workload»
deployment_in_environmentСвязь «Workload — стенд»
environmentРесурс «Стенды»
environment_typeПараметр stand_type ресурса «Стенды»
environment_domainПараметр base_domain ресурса «Стенды»

Роли, которым нет соответствия в каталоге, оставьте пустыми. Разделы, основная роль которых не сопоставлена, покажут сообщение «Настройте правила маппинга или примените набор данных «Каноничная архитектура»». Перечень всех ролей — в разделе «Правила маппинга».

Создание набора маппинга

Создайте набор маппинга и сделайте его набором по умолчанию:

  1. Перейдите в раздел «Администрирование» → «Справочники» → «Правила маппинга» и нажмите «Создать».
  2. На вкладке «Основная информация» заполните поля:
    • «Название» — например Главная для продуктов;
    • «Идентификатор» — например home-products;
    • включите «По умолчанию для главной».
  3. Перейдите на вкладку «Маппинг каталога».

Заполнение областей

Области заполняются по очереди: связи и параметры роли выбираются из ресурса её родительской роли, поэтому сначала сопоставьте ресурсы.

Заполните область «Системы»:

  1. В блоке «Ресурс каталога» выберите «Продукты».
  2. В блоке «Свойства» выберите domain для «Домен системы» и status для «Жизненный цикл системы».

Заполните область «Микросервисы»:

  1. В блоке «Ресурсы каталога» нажмите «Добавить ресурс» и выберите «Сервисы».
  2. В карточке ресурса выберите параметры lang для «Язык микросервиса» и repo_url для «Репозиторий микросервиса».
  3. Выберите связь «Продукт — сервис» для «Содержит микросервис» и связь «Сервис — workload» для «Имеет развёртывание».

Заполните области «Окружения» и «Развёртывания»:

  1. В области «Окружения» выберите ресурс «Стенды» и параметры stand_type для «Тип окружения» и base_domain для «Домен окружения».
  2. В области «Развёртывания» выберите ресурс «Workloads», связь «Workload — стенд» для «Развёртывание в окружении» и параметры replicas и image.

Нажмите «Сохранить».

Если после сохранения изменить ресурс роли, форма очистит зависимые связи и параметры. Проверьте их перед повторным сохранением.

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

Откройте главную и проверьте разделы:

  • «Системы» — в дереве «Домены» отображаются продукты, сгруппированные по параметру domain. Продукты без значения domain в дереве не отображаются;
  • «Микросервисы» — в таблице отображаются сервисы, их языки и продукты в колонке «Система»;
  • «Окружения» — в таблице отображаются стенды с типами и доменами;
  • «Потребление ресурсов» — в таблице отображаются сущности ресурса «Workloads» с числом реплик.

Если раздел показывает «Настройте правила маппинга или примените набор данных «Каноничная архитектура»», проверьте, что основная роль раздела сопоставлена ресурсу и что у пользователя есть права на просмотр сущностей этого ресурса.

Процессы

Чтобы запускать процессы с главной, добавьте процессы в слоты действий. Например, чтобы создавать стенды кнопкой «Создать окружение»:

  1. Откройте набор маппинга, область «Окружения», блок «Действия».
  2. В слоте «Создать окружение» нажмите «Добавить процесс» и выберите процесс создания стенда.
  3. Сохраните набор.

Требования к процессам главной и контекст, который они получают, описаны в разделе «Процессы главной».