В нем всегда говорится, что выпуск находится в процессе.
Если вы запускаете этот API в качестве задачи во время выпуска, in progress
будет ожидать поведения. Поскольку для конвейерного сервера релизов он содержит много поведений, в дополнение к заданиям развертывания он также включает в себя утверждение, шлюз и т. Д. Для сервера выпуск является настоящим завершением только после завершения всех поведений. Или он будет рассматриваться как in progress
.
. В своей операции вы устанавливаете этот API как часть процесса выпуска, он никогда не получит реальное состояние развертывания, потому что завершенный процесс выпуска еще не завершен.
Помечайте сборку только в случае успешного выпуска
Чтобы достичь того, чего вы хотите, прямой подход не поможет вам в этом. В качестве обходного пути вы можете создать одну переменную уровня выпуска, чтобы помочь вам сделать это.
Сценарии: Существует конвейер выпуска, в котором есть этап для выполнения задания развертывания. Моя логика работы с логикой состоит в том, чтобы создать переменную уровня выпуска с новой задачей на последнем шаге задания агента, только после того, как все предыдущие задачи, выполняемые в одном и том же задании агента, выполнены успешно. Теперь, если переменная уровня выпуска успешно создана, это будет означать, что задание агента успешно выполнено.
Для API переменной create в выпуске вы можете использовать:
PUT https://vsrm.dev.azure.com/{organization}/{project}/_apis/release/releases/{releaseId}?api-version=5.0
И завершенный скрипт, вы можете обратиться к этому blog script .
С этой логикой одна новая созданная переменная уровня выпуска означает, что ее соответствующее задание агента выполнено успешно. Таким образом, независимо от того, сколько заданий агента существует в конвейере выпуска, просто нужно определить, существуют ли эти переменные или установлено ли значение, как вы ожидаете (например, true или false). Если оно выполнено, выполните операцию добавления тега в сборку.
Добавьте одно задание агента, которое будет выполнено в конце процесса выпуска. В этой агентской работе просто нужно добавить одну задачу, используемую для пометки сборки. Используйте выражение условия на уровне задания агента, чтобы определить, нужно ли выполнять задачу.