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

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

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

Табл. 1. Получите утверждение или настройте точку принятия решения
Тип задачи... Функции... Примеры и сведения...
Пользовательская операция

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

См. раздел Запуск конвейера и просмотр результатов. и Управление пользовательским доступом и утверждениями в службе vRealize Automation Code Stream.

Условие

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

См. раздел Использование привязок переменных в задаче «Условие» для запуска или остановки конвейера в vRealize Automation Code Stream.

Табл. 2. Автоматизация непрерывной интеграции и развертывания
Тип задачи... Функции... Примеры и сведения...
Облачный шаблон

Развертывает облачный шаблон автоматизации из GitHub и подготавливает приложение, а также автоматизирует непрерывную интеграцию и непрерывную доставку (CICD) этого облачного шаблона для развертывания.

См. раздел Как автоматизировать выпуск приложения, развернутого с использованием облачного шаблона YAML в vRealize Automation Code Stream.

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

  • Целое число
  • Строка перечисления
  • Логическое значение
  • Переменная массива

При использовании привязок переменных в полях ввода необходимо учитывать следующие исключения. Для перечислений значения выбираются из фиксированного набора. Логические значения вводятся в текстовую область ввода.

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

CI

Обеспечивает непрерывную интеграцию кода в конвейер путем извлечения образа сборки Docker из конечной точки реестра и его развертывания в кластере Kubernetes.

См. раздел Планирование собственной сборки по модели непрерывной интеграции и непрерывной доставки в vRealize Automation Code Stream перед использованием смарт-шаблона конвейера.

Настраиваемое

Интегрирует vRealize Automation Code Stream с собственными средствами сборки, тестирования и развертывания.

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

Kubernetes

Автоматизация развертывания приложений в кластерах Kubernetes на AWS.

См. раздел Автоматизация выпуска приложения в кластере Kubernetes с помощью vRealize Automation Code Stream.

Конвейер

Создает вложенный конвейер в главном конвейере. Если конвейер является вложенным, он работает как задача в первичном конвейере.

На вкладке «Задача» главного конвейера можно легко перейти к вложенному конвейеру, если щелкнуть ссылку на него. Вложенный конвейер откроется на вкладке «Создать браузер».

Чтобы найти вложенные конвейеры в разделе Выполняемые элементы, введите вложенный в области поиска.

Табл. 3. Интеграция приложений для разработки, тестирования и развертывания
Тип задачи... Функции... Примеры и сведения...
Bamboo

Взаимодействует с сервером непрерывной интеграции Bamboo (CI), который непрерывно создает, тестирует и интегрирует программное обеспечение при подготовке к развертыванию, а также запускает сборки кода, когда разработчики фиксируют изменения. Он предоставляет расположения артефактов, которые создает сборка Bamboo, чтобы задача могла выводить параметры для других задач, которые будут использоваться для сборки и развертывания.

Подключитесь к конечной точке сервера Bamboo и запустите план сборки Bamboo из своего конвейера.

Jenkins

Запускает задания Jenkins, которые создают и проверяют исходный код, запускают сценарии тестирования и могут использовать настраиваемые сценарии.

См. раздел Интеграция Jenkins со службой vRealize Automation Code Stream.

TFS

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

vRealize Automation Code Stream поддерживает Team Foundation Server 2013 и 2015.

vRO

Расширяет возможности vRealize Automation Code Stream за счет запуска предварительно определенных или настраиваемых рабочих процессов в vRealize Orchestrator.

См. раздел Интеграция службы vRealize Automation Code Stream с решением vRealize Orchestrator.

Табл. 4. Интеграция других приложений с помощью API-интерфейса
Тип задачи... Функции... Примеры и сведения...
REST

Интегрирует vRealize Automation Code Stream с другими приложениями, использующими интерфейс REST API, чтобы было можно непрерывно разрабатывать и доставлять приложения, которые должны взаимодействовать друг с другом.

См. раздел Как использовать интерфейс REST API для интеграции vRealize Automation Code Stream с другими приложениями.

Опрос

Вызывает интерфейс REST API и опрашивает его до тех пор, пока задача конвейера не станет соответствовать критериям выхода и не завершится.

См. раздел Как использовать интерфейс REST API для интеграции vRealize Automation Code Stream с другими приложениями.

Табл. 5. Запуск удаленных и пользовательских сценариев
Тип задачи... Функции... Примеры и сведения...
PowerShell

Позволяет задаче сценария PowerShell выполнять команды сценария на удаленном узле. Например, сценарий может автоматизировать тестовые задачи и выполнять административные команды.

Сценарий может быть удаленным или определяемым пользователем. Он может подключаться по протоколу HTTP или HTTPS, а также использовать TLS.

Служба с именем winrm должна быть настроена на узле Windows. winrm должна быть настроена для MaxShellsPerUser и MaxMemoryPerShellMB.

При настройке MaxShellsPerUser и MaxMemoryPerShellMB:

  • Допустимое значение для MaxShellsPerUser — 500 для 50 параллельных конвейеров с 5 задачами PowerShell для каждого конвейера. Чтобы задать значение, выполните: winrm set winrm/config/winrs '@{MaxShellsPerUser="500"}'
  • Допустимое значение памяти для MaxMemoryPerShellMB — 2048. Чтобы задать значение, выполните: winrm set winrm/config/winrs '@{MaxMemoryPerShellMB="2048"}'

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

SSH

Позволяет задаче сценария Bash Shell выполнять команды сценария на удаленном узле. Например, сценарий может автоматизировать тестовые задачи и выполнять административные команды.

Сценарий может быть удаленным или определяемым пользователем. Он может подключаться по протоколу HTTP или HTTPS и требует наличия закрытого ключа или пароля.

Служба SSH должна быть настроена на узле Linux, а для конфигурации SSHD для MaxSessions должно быть задано значение 50.

Сценарий может быть удаленным или определяемым пользователем. Например, сценарий может выглядеть следующим образом:

message="Hello World" echo $message

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