从 Azure Pipelines 更新 JIRA 问题

Updating JIRA issues from Azure Pipelines

我们正在使用 JIRA 云来处理问题。我们的源代码在 Azure Devops Repos 中,我们使用 Azure Devops Pipelines 进行构建和发布。

是否可以设置它,以便当 Azure Pipelines 已完成对特定环境的部署时,JIRA 问题会自动转换为另一种状态? 问题编号是 Pull Request 标题中的引用。

如果手动添加一个变量来定义管道中的问题编号是可行的。您可以尝试在下面的发布管道末尾添加一个 bash 任务并调用 Jira api 来转换问题状态。

  1. 首先为issue number定义一个变量,如果需要的话,为transitionid定义一个变量。

  2. 其次在发布管道的末尾添加一个 bash 任务。

假设您知道转换 ID。您可以使用以下脚本。 单击 here 获取 Jira 的 api 令牌。

curl -D- -u "username:APIToken" -X POST --data '{"transition":{"id":"transitionid"}}' -H "Content-Type: application/json"  https://[accouint].atlassian.net/rest/api/2/issue/[issue-no]/transitions?transitionId?expand=transitions.fields

(要获取 transitionids,请使用 api):

curl -D- -u "username:APIToken" -X GET https://[accouint].atlassian.net/rest/api/2/issue/[issue-no]/transitions?transitionId?expand=transitions.fields

更新:

拉取请求标题可以通过下面rest api.

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

希望以上对您有所帮助。