Как получить заголовок PR и сохранить его в переменной - PullRequest
0 голосов
/ 14 февраля 2020

Я хотел бы иметь возможность получить PR-сообщение и сохранить его как переменную в Azure Devops, чтобы я мог изменить заголовок на ** SKIP TEST ** и сканировать его в конвейере, а не просматривать пользовательский интерфейс переменных. вручную.

Я думаю, мне просто нужно выполнить какой-то вызов REST API, так как у меня уже есть PR ID и другая идентифицирующая информация. Затем используйте средство, которое читает выходные данные и сохраняет значение в переменной.

1 Ответ

1 голос
/ 14 февраля 2020

Я думаю, мне просто нужно выполнить какой-то вызов REST API, так как у меня уже есть PR ID и другая идентифицирующая информация.

Так как у вас уже есть ID PR, я предлагаю Запросы на извлечение - получить запрос на извлечение по идентификатору .

Используйте этот API:

GET https://dev.azure.com/{organization}/{project}/_apis/git/pullrequests/{pullRequestId}?api-version=5.1

Как видно из примера ответа do c , имеется title.

  ...
  "creationDate": "2016-11-01T16:30:31.6655471Z",
  "title": "A new feature",
  "description": "Adding a new feature",
  ...

, сохраняющий его в Переменная

Что касается того, как сохранить ее в переменной, я предлагаю вам создать переменную и затем обновить ее.

Пожалуйста, обратитесь к демонстрации ниже, используя задачу powershell для вызова Rest Api и обновите значение переменной, а затем используйте его в следующей задаче cmd:

Переменная:

enter image description here

Задача Powershell:

enter image description here

Сценарий Powershell:

$personalToken="******************************"
$token=[System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($personalToken)"))
$header=@{authorization="Basic $token"}
$projectUrl ="https://dev.azure.com/{organization}/{project}/_apis/git/pullrequests/{PRid}?api-version=5.1"
$content=Invoke-RestMethod -Uri $projectUrl -Method GET -contentType "application/json" -Headers $header
Write-Host "##vso[task.setvariable variable=myTitle;]$content"

Задача CMD:

enter image description here

CMD результат:

enter image description here

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