DevOps Azure: как вызвать релиз после завершения запроса на удаление? - PullRequest
1 голос
/ 25 сентября 2019

У меня есть репо, у которого есть две ветви:

  • velop (ветка репо по умолчанию)
  • master

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

В настоящее время политика ветки разработки требует успешного завершения сборки CI для объединения PR.Эта сборка создаст артефакты пакета NuGet с предварительным тегом (альфа - ####).

Конвейер выпуска отвечает за получение этих пакетов и их публикацию во внутреннем фиде NuGet.

Я пытаюсь добиться того, чтобы конвейер выпуска запускался автоматически , когда PR завершен , , а не всякий раз, когда сборка CI завершается успешно.

Я ожидал "триггер «запросить запрос», чтобы сделать это, но, к моему большому удивлению, триггер не подтвердит статус PR и запустит конвейер освобождения, как только сборка CI будет завершена.

Это означает, что если PRпо какой-либо причине отклонено, NuGet все еще может быть развернут в моем фиде!

Что я здесь не так делаю?Почему триггер запроса на запуск не работает иначе, чем триггер непрерывного развертывания?Какова его цель тогда?: /

1 Ответ

1 голос
/ 25 сентября 2019

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

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

Таким образом, эти два триггера отличаются друг от друга и более подробную информацию вы можете найти здесь.https://docs.microsoft.com/en-us/azure/devops/pipelines/release/deploy-pull-request-builds?view=azure-devops

https://docs.microsoft.com/en-us/azure/devops/pipelines/release/triggers?view=azure-devops

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

...