Как создать статус запроса VSTS из успешного выпуска? - PullRequest
0 голосов
/ 06 июня 2018

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

Похоже, что API статуса запроса на извлечение идеально подходит для этого.Однако я не могу понять, как получить pullRequestId из выпуска.

Существует переменная $ (System.PullRequest.PullRequestId) в определении сборки, но не в определении выпуска.

В настоящее время я тестирую хакерское решение - на этапе сборки записать новый файл в каталог артефактов с $ (System.PullRequest.PullRequestId) в нем.Это тогда доступно для выпуска.Надеюсь, есть более простой способ.

1 Ответ

0 голосов
/ 07 июня 2018

Кажется, что сборка запускается проверкой PR, а выпуск - артефактами сборки.Затем вы можете получить идентификатор запроса извлечения из предопределенной переменной $(Release.Artifacts.vs2017.SourceBranch).

Поскольку сборка запускается для проверки PR, поэтому исходный формат ветви будет:

refs/pull/{PullRequestId}/merge

Во время выпуска вы можете получить ветку с исходным кодом $(Release.Artifacts.vs2017.SourceBranch).Затем разделите строку на /, и вы получите идентификатор запроса на извлечение.Ниже приведен пример (переменная $prid предназначена для идентификатора запроса на извлечение):

$t="$(Release.Artifacts.vs2017.SourceBranch)"
$pr=$t -split '/'
$prid=$pr[2]
echo "the pull request id is $prid"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...