Объектная модель интеграции с Jira

Объектная модель интеграции с Jira добавляется при загрузке метаинформации.

Объектная модель интеграции с Jira позволяет настроить интеграцию для системного класса "Запрос" (serviceCall) и пользовательских классов "Запрос на изменение" (changeRequest) и "Задача" (task). Для использования в интеграции объектов других классов необходимо дополнить объектную модель

Объектная модель интеграции

Объектная модель интеграции с Jira включает в себя:

  • класс с кодом jira;
  • класс с кодом catalogs и его типы:

    • тип с кодом catalogs$jira для хранения метамоделей Jira;
    • тип с кодом catalogs$naumen для хранения метамоделей SMP.
  • скриптовые модули для обеспечения работы интеграции;

    Режим компиляции скриптовых модулей для работы модулей интеграции — all, см. Скрипты и скриптовые модули.

  • действия по событиям (содержащие "Jira" в названии), для обеспечения обработки событий интеграции.

В интерфейсе оператора на карточке компании отображается вкладка "Интеграция с Jira" для настройки интеграции с Jira.

Описание модуля jiraConstants

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

Модуль доступен для редактирования и позволяет определить:

  • Классы, доступные для интеграции (переменная INTEGR_CLASSES).

    Значения по умолчанию: "serviceCall", "task", "changeRequest". При необходимости могут быть добавлены коды других классов.

  • Атрибут для хранения проекта Jira (переменная JIRA_PROJECT).

    Значение по умолчанию: "jiraProject". При необходимости может быть указан другой код атрибута.

  • Уровни логирования событий интеграции.

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

Настройка стандартной объектной модели

Создание атрибутов объектов

В классе, объекты которого должны передаваться в Jira, добавьте следующие атрибуты:

  • "jiraID" (jiraID), типа "Строка" — для хранения идентификатора (id) в Jira. Атрибут должен обязательно иметь код "jiraID".
  • "Проект в Jira" (jiraProject), типа "Ссылка на бизнес-объект" на класс "Справочники" — для хранения проекта из Jira (класс catalogs$project).

    Атрибут должен обязательно иметь код "jiraProject".

При интеграции с Jira Cloud: в классе "Сотрудник" (employee) добавьте атрибут "accountId" (accountId).

Включение действий по событиям

В списке действий по событиям включите действия, выполнение которых будет доступно при интеграции (содержащие "Jira" в названии).

Настройка интеграции для других классов объектов

Для интеграции с Jira можно использовать любой класс объектов.

Для настройки интеграции выполните следующие настройки:

  1. В скриптовом модуле интеграции jiraConstants добавьте код класса для интеграции в класс NaumenMetaclasses (переменная INTEGR_CLASSES).
  2. В классе объектов добавьте атрибуты для интеграции.

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

    Для включенных действий в параметр "Объекты" добавьте новый класс объектов.

Настройка уровней логирования событий интеграции

Возможные значения уровней логирования событий интеграции:

  • Логирование выключено — логируются только системные события (выполнение действий по событию, создание объектов и т.д.), события интеграции не логируются.
  • Логирование основных событий (по умолчанию):

    • Обновление объектной модели SD;
    • Обновление объектной модели Jira;
    • Получение информации об инсталляции Jira;
    • Получение вебхука от Jira.
  • Подробное логирование всех событий интеграции:

    • Обновление объектной модели SD;
    • Обновление объектной модели Jira;
    • Получение информации об инсталляции Jira;
    • Получение вебхука от Jira;
    • Создание issue в Jira (отправка заявки/задачи из SD);
    • Редактирование issue в Jira;
    • Добавление комментария к issue в Jira;
    • Добавление вложения к issue в Jira;
    • Смена статуса issue в Jira;
    • Получение вложения из Jira.

Все информационные события и события успеха логируются на уровне INFO. Все ошибки логируются на уровне ERROR.