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

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

Конвейеры в Automation Pipelines

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

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

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

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

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

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

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

Например:

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

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

Например:

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

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

Например:

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

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

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

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

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

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

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