Лазурные конвейеры - как прервать / отменить релиз по условному результату задачи - PullRequest
0 голосов
/ 28 апреля 2019

У меня есть конвейер выпуска, который запускается CI, когда я хочу отправить новую версию пакета nuget , если эта версия еще не существует .

Для этого у меня есть простая задача командной строки, которая проверяет, присутствует ли этот nuget на nuget.org, и сохраняет результат в переменной окружения.

Затем я могу установить условие для следующих шагов, которые будут выполнять шаг, только если эта переменная значения имеет значение true.

enter image description here

Это прекрасно работает, однако мне интересно как я могу просто остановить процесс выпуска и пропустить все последующие шаги, не устанавливая их условие по одному.

Кроме того, как я могу установить состояние сборки на «Отменено» задачей?

1 Ответ

0 голосов
/ 28 апреля 2019

Вы можете отменить текущую сборку или выпуск с помощью задачи PowerShell:

Write-Host "##vso[task.setvariable variable=agent.jobstatus;]canceled"
Write-Host "##vso[task.complete result=Canceled;]DONE"

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

PS - статус будет "Успешно", но на самом деле сборка / выпуск будетотменено.

Если вы хотите видеть статус «Отменено», вам нужно использовать Rest API, отметьте этот скрипт PowerShell.

...