Статья

Как автоматически наполнять технологический радар

Технологический радар можно вести вручную, но при большом количестве сервисов такой подход становится трудоёмким. Ginc Radar позволяет автоматически находить технологии по результатам сканирования репозиториев и добавлять их на радар.

Разберём, как устроен этот процесс и что потребуется настроить.

Выбираем репозитории

Для начала необходимо подключить систему управления исходным кодом. Ginc Radar поддерживает ручное добавление любого Git репозитория, а также предоставляет интеграцию с GitLab и Bitbucket. После настройки интеграции можно выбрать репозитории, которые будут участвовать в наполнении радара.

Таким образом, мы задаём область наблюдения. Например, для радара Backend можно выбрать репозитории соответствующих сервисов, а для Infrastructure — проекты с конфигурациями и инфраструктурными компонентами.

Форма выбора интеграции Git, GitLab или Bitbucket и репозиториев, которые будут подключены к технологическому радару в Ginc Radar.
Выбираем репозитории, которые будут участвовать в наполнении радара.

Сканируем зависимости

После добавления репозиториев можно запускать сканирование. Ginc Radar анализирует содержимое проектов и извлекает информацию о найденных зависимостях.

Варианты запуска сканирований:

  • 1. По расписанию
  • 2. Вручную из интерфейса Ginc Radar
  • 3. При помощи Rest Api (веб хуки или CI/CD)

В результате система получает список пакетов, их версий и репозиториев, в которых они обнаружены. Это фактические данные о составе проектов, на основе которых можно определить используемые технологии.

Зависимость и технология — разные сущности. В одном проекте могут использоваться десятки пакетов, относящихся к одной технологии. Для наполнения радара необходимо настроить их сопоставление.

Настраиваем сопоставление

Для связи найденных пакетов с технологиями в Ginc Radar предусмотрен механизм сопоставления. Он позволяет задать правила, по которым система определяет, к какой технологии относится зависимость.

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

Настройка правила Matching для Asciidoctor в административной панели Ginc Radar: тип зависимости Maven и регулярное выражение для имени пакета.
Правило сопоставления связывает найденные зависимости с технологией.

Включаем автоматическое наполнение

Когда репозитории подключены и правила сопоставления настроены, можно включить автоматическое наполнение в настройках радара.

При следующем сканировании Ginc Radar проверит найденные зависимости по настроенным правилам. Если для зависимости найдётся соответствующая технология, она будет добавлена в радар.

При этом у новой технологии ещё не будет статуса и секции. Система обнаружила факт использования технологии, но конечное решение по статусу ее жизненного цикла в организации принимает архитектор.

Распределяем новые технологии

После автоматического обнаружения новые технологии необходимо распределить по секциям и статусам. Для этого в Ginc Radar есть механизм массового редактирования.

Вместо того чтобы открывать каждую технологию отдельно, можно выбрать несколько новых технологий и назначить им нужные параметры. Например, часть технологий можно отправить на оценку, а другие добавить в список рекомендуемых.

Массовая смена статусов для новых, автоматически обнаруженных, технологий.
Массовое редактирование позволяет классифицировать сразу несколько технологий.

Далее технологии попадают на радар с флагом "новая" с автоматически созданной ревизией.

Интерфейс массового редактирования новых технологий в Ginc Radar с выбором нескольких технологий и назначением им секций и статусов.
Обнаруженные технологии появляются на радаре.

Что происходит при следующих сканированиях

После первоначальной настройки процесс превращается в цикл. Если в репозиториях появляются новые зависимости, Ginc Radar проверяет их по настроенным правилам сопоставления.

Если система обнаруживает новую технологию, то происходит очередное наполнение радара.

Таким образом, радар может пополняться по мере развития проектов, а архитектурная команда получает информацию о новых технологиях, которые фактически используются в разработке.

Автоматическое наполнение не заменяет архитектурное управление. Оно помогает обнаруживать технологии и сокращает ручную работу по сбору информации. Решение о статусе и месте технологии на радаре по-прежнему принимает архитектурная команда.

От сканирования к технологическому радару

Автоматическое наполнение объединяет несколько этапов: подключение репозиториев, сканирование зависимостей, настройку сопоставления и классификацию обнаруженных технологий.

Самая существенная работа приходится на первоначальную настройку. После первоначальной настройки Ginc Radar регулярно актуализирует и помогает поддержанивать технологическую модель в соответствии с фактическим составом проектов.

Попробуйте Ginc Radar

Настройте сканирование и формируйте технологический радар на основе фактических данных.

Узнать о Ginc Radar