Поделиться через


Интеграция Azure Pipelines с управлением изменениями ServiceNow

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

Чтобы улучшить совместную работу между командами разработки и ИТ-отделами, Azure Pipelines поддерживает интеграцию с ServiceNow. Команды могут снизить риски, связанные с изменениями, и следовать методологиям управления службами, такими как библиотека инфраструктуры информационных технологий (ITIL), включая шлюзы управления изменениями в процессах выпуска.

В этом руководстве описано следующее:

  • Настройте экземпляры системы ServiceNow.
  • Включите процесс управления изменениями ServiceNow в качестве шлюза выпуска.
  • Отслеживайте процесс управления изменениями из конвейеров выпуска.
  • Продолжайте обновлять запросы на изменение ServiceNow с результатами развертывания.

Предварительные условия

Настройка экземпляра ServiceNow

  1. Установите расширение Azure Pipelines в экземпляре ServiceNow. Дополнительные сведения об установке приложений из магазина ServiceNow см. в разделе " Обзор покупки ". Для завершения установки необходимы учетные данные HI .

  2. В ServiceNow создайте нового пользователя для учетной записи службы Azure Pipelines и предоставьте ей роль x_mioms_azpipeline.pipelinesExecution .

    Снимок экрана: настройка нового пользователя в ServiceNow.

Настройка организации и проекта Azure DevOps

  1. В организации Azure DevOps установите расширение ServiceNow Change Management.

    Снимок экрана: расширение ServiceNow Change Management.

  2. В проекте Azure DevOps создайте подключение службы ServiceNow с помощью обычной проверки подлинности или проверки подлинности OAuth2. Дополнительные сведения см. в разделе "Создание подключения к службе".

    Снимок экрана: настройка подключения службы ServiceNow.

Настройка конвейера

Интеграцию ServiceNow можно добавить в классический конвейер выпуска или в конвейер YAML, который развертывается в среде.

Добавление шлюза управления изменениями ServiceNow перед развертыванием

  1. В конвейере выпуска Azure Pipelines выберите значок условий предварительного развертывания.

  2. На экране «Условия предварительного развертывания» разверните и включите Шлюзы, выберите Добавить рядом с Шлюзы развертывания, и выберите предразверточный шлюз управления изменениями ServiceNow.

    Снимок экрана: добавление шлюза предварительного развертывания.

Настройка параметров управления изменениями ServiceNow

  1. На экране параметров управления изменениями ServiceNow в разделе "Подключение ServiceNow" выберите созданное ранее подключение службы ServiceNow.

    Снимок экрана: настройка шлюза управления изменениями ServiceNow.

  2. Заполните оставшуюся часть формы следующим образом:

    Настройка Описание
    Действие Выберите "Создать новый запрос на изменение" или "Использовать существующий запрос на изменение".
    Тип изменения Выберите "Обычный", "Стандартный" или "Экстренная ситуация".
    Краткое описание Введите сводку об изменении.
    Расписание запроса на изменение При необходимости введите расписание изменения в соответствии с рабочим процессом ServiceNow. В разделе "Запланированная дата начала" и "Запланированная дата окончания" введите дату и время в формате y-MM-ddTHH:mm:ssZ.
    Description При необходимости введите подробное описание изменения.
    Категория При необходимости выберите категорию изменения, например оборудование, сеть или программное обеспечение.
    Приоритет При необходимости выберите приоритет изменения.
    Риск При необходимости выберите уровень риска для изменения.
    Воздействие При необходимости выберите эффект изменения в бизнесе.
    Элемент конфигурации При необходимости выберите элемент конфигурации, к которому применяется изменение.
    Группа назначений При необходимости выберите группу, к которым назначено изменение.
    Дополнительные>параметры запроса на изменение Выберите многоточие рядом с полем и нажмите кнопку "Добавить ", чтобы добавить дополнительные параметры. Имена должны быть именами полей, а не метками, с префиксом u_, такими как u_backout_plan. Значения должны быть допустимыми в ServiceNow. Недопустимые записи игнорируются.
    Критерии успешности Выберите требуемое состояние заявки на изменение или расширенные критерии успешности.
    Требуемое состояние запроса на изменение Выберите значение статуса запроса на изменение, необходимое для успешного прохождения шлюза и продолжения потока.
    Расширенные критерии успешности Введите выражение, которое определяет, когда шлюз должен проработать успешно. Запрос на изменение определяется как root['result'] в ответе serviceNow. Например, and(eq(root['result'].state, 'New'),eq(root['result'].risk, 'Low')). Дополнительные сведения см. в разделе Выражения.
    Выходные переменные>Имя ссылки Чтобы использовать выходные параметры в рабочем процессе развертывания, укажите имя указателя. Доступ к переменным шлюза можно получить с помощью PREDEPLOYGATE префикса в задании без агента. Например, если имя ссылки установлено в gate1, можно получить номер запроса на изменение с помощью переменной $(PREDEPLOYGATE.gate1.CHANGE_REQUEST_NUMBER).
    Список переменных CHANGE_REQUEST_NUMBER — это количество запроса на изменение.
    CHANGE_SYSTEM_ID — это идентификатор системы запроса на изменение.

Обновление конвейера

  1. В конце конвейера выпуска добавьте задание без агента с задачей Обновить запрос на изменение ServiceNow.

  2. В форме параметров задачи в разделе "Подключение ServiceNow" выберите подключение службы ServiceNow.

  3. В разделе "Номер запроса на изменение" введите номер запроса на изменение ServiceNow для обновления.

  4. Выберите "Обновить состояние", а затем в разделе "Обновленный запрос на изменение" выберите или введите состояние, заданное для запроса на изменение.

  5. В разделе " Заметки о работе" в разделе "Дополнительно" при необходимости введите все рабочие заметки, добавляемые для обновления запроса на изменение.

    Снимок экрана, на котором показано, как настроить задачу

Примечание.

Задача обновления запроса на изменение в ServiceNow терпит неудачу, если ни одно из полей запроса не было обновлено во время выполнения. ServiceNow игнорирует недопустимые поля и значения, передаваемые задаче.

Создайте выпуск

Выберите "Создать выпуск ", чтобы начать новый выпуск.

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

Снимок экрана, на котором показано выполнение шлюза предварительного развертывания.

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

Снимок экрана: журналы конвейера.

Запрос на изменение помещается в очередь в ServiceNow, и владелец изменения может просмотреть его.

Снимок экрана: новый запрос на изменение в ServiceNow.

Вы можете найти конвейер выпуска, инициировавший новый запрос на изменение, в разделе метаданных Azure DevOps Pipeline.

Снимок экрана: метаданные конвейера выпуска.

Когда изменение готово к реализации и перемещено в состояние Реализация, конвейер возобновляет выполнение, и состояние шлюза должно стать успешным.

Снимок экрана: состояние шлюза развертывания.

Запрос на изменение закрывается автоматически после развертывания.

Вопросы и ответы

Какие версии ServiceNow поддерживаются?

Расширение Azure Pipelines ServiceNow поддерживает выпуски Кингстона, Лондона, Нью-йорка, Парижа, Квебека, Рима, Сан-Диего, Токио и Юты.

Расширение Azure Pipelines ServiceNow поддерживает выпуски Kingston, Лондон, Нью-йорк, Париж, Квебек, Сан-Диего, Токио и Юта.

Расширение Azure Pipelines ServiceNow поддерживает выпуски Kingston, London, New York, Paris и Quebec.

Какие типы запросов на изменение поддерживаются?

Интеграция Azure Pipelines ServiceNow поддерживает обычные, стандартные и экстренные изменения.

Как задать другие свойства изменений?

Можно указать дополнительные свойства изменений из поля "Дополнительные параметры запроса изменения" или в otherParameters. Используйте формат JSON с парами "ключ-значение", где используется имя поля, а не метка, с префиксом u_.

Можно ли обновить настраиваемые поля в запросе на изменение с дополнительными параметрами запроса на изменение?

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

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

Плагины Change Management Core и Change Management - State Model должны быть активными в вашем экземпляре ServiceNow, чтобы выпадающие списки работали. Дополнительные сведения см. в разделе "Управление изменениями " и "Обновление состояний запросов на изменение".

Ресурсы