Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Сервисы Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022
Триггер конвейера определяет, когда запускать конвейер. Триггер можно настроить для запуска конвейера на основе расписания или в ответ на событие, например создание запроса на вытягивание. Azure Pipelines поддерживает следующие типы триггеров:
- Триггеры непрерывной интеграции (триггеры CI) запускают конвейер при отправке кода в ветвь.
- Триггеры pull request (PR-триггеры) запускают пайплайн, когда вы создаёте PR или отправляете изменения в исходную ветвь открытого PR. Репозитории GitHub поддерживают триггеры по комментариям, которые запускают конвейер при добавлении комментария к открытому pull request.
- Запланированные триггеры запускают конвейер в предопределенном расписании.
- Триггеры завершения конвейера запускают конвейер при завершении другого конвейера.
В этой статье представлен обзор триггеров конвейера YAML и классических триггеров конвейера сборки . Классические конвейеры выпуска имеют аналогичные версии триггеров, описанных в предыдущем списке. Дополнительные сведения см. в разделе "Классические триггеры конвейера выпуска".
Триггеры CI
Ci триггеры запускают конвейер при отправке в ветвь, которая соответствует критериям, определенным триггером. Используйте ключевое trigger слово для настройки триггера CI. Например, чтобы запустить конвейер при отправке main в ветвь, укажите следующий триггер.
trigger:
- main
Если вы явно не настраиваете конвейер, то для всех ветвей по умолчанию включены триггеры CI, если только не задан параметр Disable implied CI trigger или настройки интерфейса переопределяют триггер YAML.
Если вы явно не настраиваете свой конвейер, для всех ветвей по умолчанию включены триггеры CI, если только не задан параметр Отключить подразумеваемый триггер CI или параметры интерфейса пользователя переопределяют триггер YAML.
Примечание.
Отключить неявный триггер CI доступно только в Azure DevOps Server 2022.2 и более поздних версиях. В Azure DevOps Server 2022 и 2022.1 триггеры CI включены по умолчанию, если они не настроены явным образом.
Чтобы отключить триггеры CI в конвейере, используйте следующий синтаксис.
trigger: none
Конвейеры YAML поддерживают триггеры CI для следующих типов репозитория. Дополнительные сведения об использовании триггеров CI с определенным типом репозитория см. в следующих статьях.
- Триггеры CI в Azure Repos Git
- Триггеры CI в GitHub
- Триггеры CI в GitHub Enterprise Server
- Триггеры CI в Bitbucket Cloud
Сведения о полном синтаксисе триггера YAML и параметрах, доступных для триггеров CI, см. в определении триггеров.
Important
Пути в Git чувствительны к регистру, включая фильтры путей для триггеров CI и PR.
Триггеры PR
Триггеры запроса на включение изменений (PR) запускают конвейер каждый раз, когда вы открываете запрос на включение изменений или отправляете изменения в исходную ветвь этого запроса. Используйте ключевое pr слово для настройки триггера PR. Например, чтобы запустить конвейер при вызове PR в main ветвь, укажите следующий триггер.
pr:
- main
Если вы явно не настраиваете триггеры PR в конвейере, они включены по умолчанию, если параметры пользовательского интерфейса не переопределяют триггер YAML. Запросы на вытягивание в любую ветвь активируют запуск конвейера. Чтобы отключить триггеры PR в конвейере, используйте следующий синтаксис.
pr: none
Триггеры PR YAML поддерживаются для GitHub и Bitbucket Cloud. Дополнительные сведения об использовании триггеров PR с этими типами репозиториев см. в разделе ПР триггеров в GitHub и PR триггеров в Bitbucket Cloud. Сведения о полном синтаксисе триггера PR YAML см. в определении pr.
Azure Repos Git использует политики веток для реализации триггеров PR. Дополнительные сведения см. в разделе ПР триггеров в Azure Repos Git.
Триггеры комментариев
Триггеры комментариев настраивают запуск конвейера, когда участники оставляют комментарий к pull request, содержащий команду для pull request, например /azp run. Триггеры комментариев поддерживаются только для GitHub репозиториев. Дополнительные сведения см. в статье Триггеры комментариев репозитория GitHub.
Запланированные триггеры
Запланированные триггеры запускают конвейер в предопределенном расписании. Все типы репозитория, поддерживающие конвейеры YAML , поддерживают запланированные триггеры в конвейерах YAML. Эти типы репозиториев включают Azure Repos Git, GitHub, GitHub Enterprise Server и Bitbucket Cloud.
Чтобы определить запланированный триггер в YAML, используйте schedules ключевое слово и определите расписание с помощью синтаксиса cron. В следующем примере настраивается расписание, которое выполняется каждый день в полночь.
# YAML file in the main branch
schedules:
- cron: '0 0 * * *'
displayName: Daily midnight build
branches:
include:
- main
Дополнительные сведения и примеры см. в разделе "Запланированные триггеры", "Определения расписаний" и "schedules.cron".
Триггеры завершения конвейера
Триггеры конвейера в конвейерах YAML и триггеры завершения сборки в классических конвейерах сборки позволяют активировать один конвейер после завершения другого.
Настройте триггер ресурса конвейера в конвейере, чтобы запустить конвейер после завершения выполнения исходного конвейера.
resources:
pipelines:
- pipeline: sourcePipelineResource # Label for this pipeline resource; used when referring to it elsewhere in the pipeline.
source: source-pipeline # The name of the pipeline referenced by this pipeline resource.
project: FabrikamProject # Required only if the source pipeline is in another project
trigger: true # Run this pipeline when any run of source-pipeline completes
В конвейер можно добавить несколько ресурсов. Триггер можно настроить для запуска при завершении любой версии исходного конвейера или ограничить его определенными ветвями.
Дополнительные сведения и примеры см. в разделе "Триггеры завершения конвейера".
Полный синтаксис и параметры триггера см. в определении resources.pipelines.pipeline.
Рекомендации по ветвям для триггеров в конвейерах YAML
Конвейеры YAML могут иметь разные версии в разных ветвях, что может повлиять на то, какие версии триггеров конвейера будут оценены и какая версия конвейера должна быть запущена.
| Тип триггера | Версия YAML конвейера |
|---|---|
Триггеры CI (trigger) |
Используется версия конвейера в запушенной ветке. |
Триггеры PR (pr) |
Используется версия конвейера в исходной ветке запроса на слияние. |
| Триггеры комментариев к запросам на вытягивание GitHub | Используется версия конвейера в исходной ветке запроса на слияние. |
| Запланированные триггеры | См. раздел "Вопросы, касающиеся ветвей для запланированных триггеров". |
| Триггеры завершения конвейера | Раздел «Рекомендации по триггерам завершения конвейера». |
Классические конвейеры выпуска
Триггеры непрерывного развертывания помогают запускать классические выпуски после завершения классической сборки или конвейера YAML.
Триггеры запланированного выпуска позволяют запускать конвейер выпуска в соответствии с расписанием.
Триггеры релизов для pull request используются для непосредственного развертывания pull request с помощью классических выпусков.
Триггеры этапов в классическом выпуске используются для настройки активации каждого этапа в классическом выпуске.