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

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

Конвейеры в vRealize Automation Code Stream

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

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

Создание конвейеров

Можно создать конвейер с пустого холста, используя смарт-шаблон конвейера или импортировав код YAML.

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

Табл. 1. Примеры этапов конвейера и его использования
Пример этапа... Примеры использования...
Разработка

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

Например:

Тестирование

На этапе тестирования можно добавить задачу Jenkins, чтобы выполнить тестирование программного приложения, а также включить средства тестирования для последующей обработки, такие как JUnit, JaCoCo и др.

Например:

Производственная среда

На этапе переноса в производственную среду можно выполнить интеграцию с облачным шаблоном в vRealize Automation Cloud Assembly для подготовки инфраструктуры, развертывания программного обеспечения в кластере Kubernetes и других задач.

Например:

Конвейер можно экспортировать как файл YAML. Щелкните Конвейеры, выберите карточку конвейера, затем щелкните Действия > Экспорт.

Утверждение конвейеров

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

  • Сведения о том, как настроить обязательное подтверждение конвейера путем включения в конвейер задачи «Пользовательская операция», см. в разделе Запуск конвейера и просмотр результатов. Эта задача отправляет уведомление по электронной почте пользователю, который должен выполнить проверку. Прежде чем работа конвейера будет продолжена, проверяющий должен утвердить либо отклонить действие.
  • Службу vRealize Automation Code Stream можно настроить так, чтобы в случае сбоя задачи или этапа на любом этапе конвейера в ней создавался запрос Jira. См. раздел Создание запроса Jira в vRealize Automation Code Stream при неудачном выполнении задачи конвейера.

Запуск конвейеров

Запуск конвейеров возможен при обновлении или проверке кода разработчиком, а также при создании или обновлении артефакта сборки.

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