Служба vRealize Automation Code Stream включает в себя подключаемый модуль Jenkins, который запускает задания Jenkins, позволяющие выполнять сборку и тестирование исходного кода. Подключаемый модуль Jenkins позволяет выполнять различные варианты тестирования и поддерживает использование настраиваемых сценариев.

Чтобы запустить задание Jenkins в конвейере, воспользуйтесь сервером Jenkins и добавьте конечную точку Jenkins в службу vRealize Automation Code Stream. Затем создайте конвейер и добавьте в него задачу Jenkins.

Необходимые условия

  • Настройте сервер Jenkins 1.561 или более поздней версии.
  • Проверьте, являетесь ли вы участником проекта в vRealize Automation Code Stream. Если нет, попросите администратора vRealize Automation Code Stream добавить вас в проект в качестве участника. См. раздел Добавление проекта в vRealize Automation Code Stream.
  • Убедитесь в наличии задания на сервере Jenkins (в противном случае задача конвейера не сможет его выполнить).

Процедура

  1. Добавьте и проверьте конечную точку Jenkins.
    1. а. Выберите пункт Конечные точки > Новая конечная точка.
    2. б. Выберите проект и укажите Jenkins в качестве типа конечной точки. Затем введите имя и описание.
    3. в. Если эта конечная точка — критически важный для бизнеса компонент инфраструктуры, установите флажок С ограниченным доступом.
    4. г. Введите URL-адрес сервера Jenkins.
    5. д. Введите имя пользователя и пароль для входа на сервер Jenkins. Затем введите прочие сведения.
      Табл. 1. Прочие сведения для конечной точки Jenkins
      Запись о конечной точке Описание
      Путь к папке Путь к папке, в которой собираются задания. Jenkins может запустить все задания в папке. Можно также создавать вложенные папки. Например:
      • folder_1 может включать в себя job_1
      • folder_1 может включать в себя folder_2, которая в свою очередь может включать в себя job_2

      При создании конечной точки для folder_1 в качестве пути к папке используется job/folder_1, и в списке заданий конечной точки будет только job_1.

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

      URL-адрес URL-адрес узла для сервера Jenkins. Введите URL-адрес в формате protocol://host:port. Например: http://192.10.121.13:8080
      Интервал между опросами Продолжительность интервала между проверками сервера Jenkins на наличие обновлений, выполняемыми службой vRealize Automation Code Stream.
      Количество повторных попыток запроса Количество повторных попыток отправить запрос запланированной сборки на сервер Jenkins.
      Время ожидания между повторными попытками Количество секунд между повторными попытками отправить запрос сборки на сервер Jenkins.
    6. е. Нажмите Проверить и убедитесь, что конечная точка подключена к службе vRealize Automation Code Stream. Если подключение отсутствует, устраните проблему, мешающую подключению, и нажмите Сохранить.
      Конечная точка Jenkins для локальной среды
  2. Чтобы выполнить сборку кода, создайте конвейер и добавьте задачу, использующую конечную точку Jenkins.
    1. а. Выберите пункт Конвейеры > Создать конвейер > Пустой холст.
    2. б. Щелкните этап по умолчанию.
    3. в. В области «Задача» (Task) введите имя задачи.
    4. г. В качестве типа задачи укажите Jenkins.
    5. д. Выберите созданную конечную точку Jenkins.
    6. е. В раскрывающемся меню выберите задание на сервере Jenkins, которое будет выполнено конвейером.
    7. ё. Введите параметр для задания.
    8. ж. Введите маркер проверки подлинности для задания Jenkins.
    Задача сборки и развертывания с помощью Jenkins содержит маркер
  3. Включите и запустите конвейер и проследите, как выполняется его работа.
    Работа конвейера при выполнении задачи сборки Jenkins.
  4. Просмотр подробностей по выполнению и состоянию конвейера на панели управления конвейером.
    Здесь можно увидеть ошибки в работе конвейера и определить их причины. Здесь также можно отслеживать тенденции, касающиеся продолжительности работы конвейера, успешных случаев его выполнения и сбоев.
    Просмотр подробностей по выполнению и состоянию конвейера на панели управления конвейером.

Результаты

Поздравляем! Вы интегрировали Jenkins со службой vRealize Automation Code Stream, добавили конечную точку, создали конвейер и настроили задачу Jenkins, выполняющую сборку кода.

Пример: Пример кода YAML для задачи сборки Jenkins

Для задач по сборке Jenkins, аналогичных данному примеру, код YAML будет выглядеть приблизительно следующим образом (с включенными уведомлениями):

test:
  type: Jenkins
  endpoints:
    jenkinsServer: jenkins
  input:
    job: Add two numbers
    parameters:
      Num1: '23'
      Num2: '23'

Дальнейшие действия

Дополнительные сведения см. в других разделах. См. раздел Подключение vRealize Automation Code Stream к конечным точкам.