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


Справочник по схеме YAML для Azure Pipelines

Справочник по схеме YAML для Azure Pipelines — это подробный справочник по конвейерам YAML, в который перечислены все поддерживаемые синтаксисы YAML и доступные параметры.

Чтобы создать конвейер YAML, начните с определения конвейера . Дополнительные сведения о создании конвейеров YAML см. в статье Настройка конвейера.

В справочнике по схеме YAML не рассматриваются задачи. Дополнительные сведения о задачах см. в разделе Индекс задач Azure Pipelines.

Определения

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

Трубопровода
Конвейер — это одно или несколько заданий, описывающих процесс CI/CD.

Расширяет
Расширяет конвейер с помощью шаблона.

Рабочих мест
Указывает задания, составляющие работу этапа.

Рабочих мест
Указывает задания, составляющие работу конвейера.

jobs.deployment
Задание развертывания — это особый тип задания. Это набор шагов для последовательного выполнения в среде.

jobs.deployment.environment
Имя целевой среды и при необходимости имя ресурса для записи журнала развертывания; format: environment-name.resource-name.

jobs.deployment.strategy
Стратегия выполнения для этого развертывания.

jobs.deployment.strategy.canary
Стратегия canary Deployment.

jobs.deployment.strategy.rolling
Стратегия последовательного развертывания.

jobs.deployment.strategy.runOnce
Стратегия развертывания RunOnce.

jobs.job
Задание — это коллекция шагов, выполняемых агентом или на сервере.

jobs.job.container
Имя ресурса контейнера.

jobs.job.strategy
Стратегия выполнения для этого задания.

jobs.job.uses
Все ресурсы, необходимые для этого задания, на которые еще нет ссылок.

jobs.template
Набор заданий, определенных в шаблоне.

Параметры
Указывает параметры среды выполнения, передаваемые в конвейер.

parameters.parameter
Параметры шаблона конвейера.

Бассейн
Какой пул следует использовать для задания конвейера.

pool.demands
Требования (для частного пула).

Pr
Триггер запроса на вытягивание.

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

resources.builds
Список ресурсов сборки, на которые ссылается конвейер.

resources.builds.builds.build
Ресурс сборки, используемый для ссылки на артефакты из выполнения.

resources.containers
Список образов контейнеров.

resources.containers.container
Ресурс контейнера, используемый для ссылки на образ контейнера.

resources.containers.container.trigger
Укажите значение none для отключения, значение true для активации для всех тегов изображений или используйте полный синтаксис, как описано в следующих примерах.

resources.packages
Список ресурсов пакета.

resources.packages.package
Ресурс пакета, используемый для ссылки на пакет NuGet или npm GitHub.

resources.pipelines
Список ресурсов конвейера.

resources.pipelines.pipelines.pipeline
Ресурс конвейера.

resources.pipelines.pipeline.trigger
Укажите значение none для отключения, true для включения всех ветвей или используйте полный синтаксис, как описано в следующих примерах.

resources.pipelines.pipeline.trigger.branches
Ветви, которые необходимо включить или исключить для запуска выполнения.

resources.repositories
Список ресурсов репозитория.

resources.repositories.repository
Ресурс репозитория используется для ссылки на дополнительный репозиторий в конвейере.

resources.webhooks
Список веб-перехватчиков.

resources.webhooks.webhook
Ресурс веб-перехватчика позволяет интегрировать конвейер с внешней службой для автоматизации рабочего процесса.

resources.webhooks.webhook.filters
Список фильтров триггеров.

resources.webhooks.webhook.filters.filter
Фильтр триггера ресурса веб-перехватчика.

Расписание
Список расписаний указывает запланированные триггеры для конвейера.

schedules.cron
Запланированный триггер указывает расписание, на основе которого создаются ветви.

Этапах
Этапы представляют собой коллекцию связанных заданий.

stage.stage
Этап — это коллекция связанных заданий.

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

Шаги
Шаги — это линейная последовательность операций, составляющих задание.

steps.bash
Выполняет скрипт в Bash в Windows, macOS и Linux.

steps.checkout
Настройте способ, как конвейер извлекает исходный код.

steps.download
Скачивает артефакты, связанные с текущим запуском или из другого конвейера Azure, связанного как ресурс конвейера.

steps.downloadBuild
Скачивает артефакты сборки.

steps.getPackage
Скачивает пакет из веб-канала управления пакетами в Azure Artifacts или Azure DevOps Server.

steps.powershell
Выполняет скрипт с помощью Windows PowerShell (в Windows) или pwsh (Linux и macOS).

steps.publish
Публикует (отправляет) файл или папку в качестве артефакта конвейера, который могут использовать другие задания и конвейеры.

steps.pwsh
Выполняет скрипт в PowerShell Core в Windows, macOS и Linux.

steps.reviewApp
При скачивании ресурс создается динамически в поставщике этапа развертывания.

steps.script
Выполняет скрипт с помощью cmd.exe в Windows и Bash на других платформах.

steps.task
Выполняет задачу.

steps.template
Определите набор шагов в одном файле и используйте его несколько раз в другом файле.

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

target.settableVariables
Ограничения на то, какие переменные можно задать.

Триггер
Триггер непрерывной интеграции (push).

Переменные
Определите переменные с помощью пар "имя-значение".

variables.group
Ссылка на переменные из группы переменных.

variables.name
Определите переменные с помощью имени и полного синтаксиса.

variables.template
Определите переменные в шаблоне.

Вспомогательные определения

Примечание

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

deployHook
Используется для выполнения шагов, которые развертывают приложение.

includeExcludeFilters
Списки элементов для включения или исключения.

includeExcludeStringFilters
Элементы для включения или исключения.

mountReadOnly
Тома для подключения только для чтения. По умолчанию используется значение false.

onFailureHook
Используется для выполнения шагов для действий отката или очистки.

onSuccessHook
Используется для выполнения шагов для действий отката или очистки.

onSuccessOrFailureHook
Используется для выполнения шагов для действий отката или очистки.

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

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

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

Рабочей области
Параметры рабочей области в агенте.

Соглашения о документации по схеме YAML

Справочник по схеме YAML — это подробное справочное руководство по конвейерам YAML в Azure Pipelines. Он содержит каталог всех поддерживаемых возможностей YAML и доступных параметров.

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

  • Слева от : находится литерал ключевое слово, используемый в определениях конвейеров.
  • Справа от : расположен тип данных. Тип данных может быть примитивным типом, таким как строка , или ссылкой на расширенную структуру, определенную в другом месте этой ссылки.
  • Тип данных] нотации [ указывает массив указанного типа определения. Например, [ string ] — это массив строк.
  • Запись {тип данных:тип данных} указывает на сопоставление данных одного типа с данными другого типа. Например, { string: string } является сопоставлением строк со строками.
  • Символ | указывает, что для ключевое слово доступно несколько типов данных. Например, означает, job | template что допускается либо определение задания, либо ссылка на шаблон.

См. также раздел

В этом справочнике рассматривается схема yaml-файла Azure Pipelines. Основные сведения о YAML см. в статье Изучение YAML за минуты Y. Azure Pipelines поддерживает не все функции YAML. К неподдерживаемой функции относятся привязки, сложные ключи и наборы. Кроме того, в отличие от стандартного YAML, Azure Pipelines зависит от того, как в сопоставлении отображается stageярлык , job, taskили ярлык задачи, например script , первый ключ.