В чем разница между триггером непрерывного развертывания и триггером запроса Pull? - PullRequest
0 голосов
/ 27 апреля 2020

Azure DevOps Параметры артефакта конвейера выпуска имеют 2 параметра:

  1. Триггер непрерывного развертывания - включение триггера будет создавать новый выпуск каждый раз, когда доступна новая сборка .
  2. Триггер запроса на извлечение - включение позволяет создавать выпуск каждый раз, когда выбранный артефакт доступен как часть рабочего процесса запроса на извлечение

Я пытаюсь понять, В чем разница между этими параметрами по отношению к выделенным частям и из-за того, что политика проверки сборки вызывает запуск релиза с обоими параметрами, если так, то почему у нас есть триггер запроса на извлечение?

Ответы [ 2 ]

1 голос
/ 28 апреля 2020

На мой взгляд, эти два триггера имеют разную рабочую область.

Предполагается, что мы установили одну сборку CI в качестве артефакта выпуска, согласно моему тесту:

1. Триггер непрерывного развертывания:

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

2. Триггер запроса на извлечение:

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

(который запускается PR, поэтому если мы создаем новый PR => Он запускает сборку PR => Он запускает PR-релиз)

Не стесняйтесь исправлять меня, если я что-то неправильно понимаю.

Обновление 1:

Вот один пи c о моих двух тестах:

enter image description here

Выпуск 8 запускается моим ручным запуском конвейера сборки с включенным только CD. И Release-7 запускается сборкой PR с включенным только PR. (Я включаю только запрос извлечения для развертывания на этапе 1)

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

1 голос
/ 27 апреля 2020

Это очень хорошо объясняет (взято из документации ):

Запросы извлечения (PR) обеспечивают эффективный способ проверки кода перед его слиянием с базой кода. Однако некоторые проблемы могут быть сложно найти, пока код не будет собран и развернут в среде. Перед введением триггеров освобождения запросов по запросу, когда PR был поднят, вы можете запустить сборку, но не развертывание. Триггеры Pull-запросов позволяют вам создавать выпуски Pull-запросов, которые развертывают ваш PR-код или PR-сборки для выявления проблем развертывания до слияния изменений кода. Вы можете использовать триггеры pull request с кодом, размещенным на Azure Repos или GitHub.

Новая сборка в основном означает, что ваш конвейер был выполнен.

Создание pull request trigger вам нужно определить артефакт, который будет позже развернут. Для этого типа триггера Azure Devops запускает ваш конвейер и создает артефакт в соответствии с вашим определением конвейера / сборки, а затем использует этот артефакт для развертывания.

Оба триггера похожи, разница в том, когда ваш код будет развернут до или после объединения в основную ветвь.

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