Удалите группы ресурсов по завершении PR - PullRequest
0 голосов
/ 29 мая 2020

Я использую сборки Pull Request, как описано ниже, для создания группы ресурсов с содержащимися ресурсами

https://docs.microsoft.com/en-us/azure/devops/pipelines/release/deploy-pull-request-builds?view=azure-devops

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

Я намерен затем автоматически удалить группу ресурсов по завершении PR. Я считал, что этого можно достичь, используя другой конвейер выпуска, запускаемый при сборке, вызванной слиянием PR с мастером. Проблема в том, что у меня нет ссылки на имя ветки в этом новом выпуске, SourceBranch - это 'master'

Может ли кто-нибудь придумать решение? По сути, мне нужно удалить группу ресурсов, названную в честь ветки, по завершении PR, которая объединяет указанную ветку с мастером.

Одновременно может быть рассмотрено несколько PR, поэтому я бы предпочел, чтобы решение не ставило в очередь никаких этапов.

1 Ответ

0 голосов
/ 02 июня 2020

Проблема в том, что у меня нет ссылки на имя ветки в этом новом выпуске, SourceBranch - это 'master'

Конвейер выпуска, инициированный запросом на извлечение, запускается refs/pull/x/merge . Это связано с запросом на слияние. Затем информацию о запросе на слияние можно получить через переменные среды.

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

В этом случае переменная BUILD_SOURCEBRANCHNAME является главной.

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

Поэтому я боюсь, что такая переменная не может удовлетворить ваши требования.

Для обходного пути:

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

не ставить в очередь какие-либо этапы.

Вы можете попытаться установить фильтры артефактов (включить и исключить) в Release Этапы трубопровода.

Например:

Filter

Результат:

Result

Надеюсь, это поможет.

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