我和我的团队正在尝试找到一种方法来自动构建发行说明,并在markdown中生成它们,以便放入Wiki中供用户访问。我找到了一段来自Microsoft的视频,其中他们的团队使用了一个流程,在该流程中,他们为功能对象中的每个功能提供了发行说明,但他们手动查询这些对象并手动为每个版本构建一个降价文件。 我敢肯定,到现在为止,他们一定已经想通了,但还找不到他们身上的任何信息。
现在,我已经看到了几个市场工具(Bravo Notes(可以做到这一点,但我认为一定有一种方法可以我们自己做一个任务,为我们做这件事,并自动将降价文件放在我们的Wiki中(当然,在批准过程之后(。
如果有人对我如何实现这一目标有任何想法,请告诉我。 我不怕弄脏一些Powershell脚本。
可以使用 Azure DevOps Rest API 获取与生成关联的工作项,然后获取工作项详细信息。 从详细信息创建一个 Markdown 文件并将其添加到 wiki。
执行此操作的 PowerShell 脚本示例(获取与生成配合的工作项并打印AssignedTo
字段(:
$user = ""
$token = "MY-PAT"
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $user,$token)))
$url = "https://dev.azure.com/{org}/{project}/_apis/build/builds/{buildId}/workitems?api-version=5.1"
$workItems = Invoke-RestMethod -Uri $url -Method Get -ContentType application/json -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)}
$json = $workItems | ConvertTo-Json
$workItems.value.ForEach({
$workItem = Invoke-RestMethod -Uri $_.url -Method Get -ContentType application/json -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)}
Write-Host $workItem.fields.'System.AssignedTo'.displayName
})