我正在使用VSTS构建和发布功能来构建.net项目。构建项目后,我希望在全局列表中更新内部版本号,以便我可以选择相同的内部版本号来解决缺陷(集成在构建中(,同时通过 MTM 执行测试用例。
此功能在我们使用内部部署 TFS 2013 时就已存在。
请让我知道是否有办法使用 VSTS Rest API 在全局列表中更新内部版本号。
提前感谢!!
没有用于更新全局列表的 Rest API,可以使用 VSTS/TFS 客户端 API(WorkItemStore.ImportGlobalLists 方法(或 witadmin 命令更新全局列表。
使用 PowerShell 的示例:获取 TfsCollection 和 TFS 服务并添加到全局列表。
function Add-TfsGlobalListItem {
Param(
[parameter(Mandatory=$true)][Microsoft.TeamFoundation.Client.TfsTeamProjectCollection] $TfsCollection,
[parameter(Mandatory=$true)][String] $GlobalListName,
[parameter(Mandatory=$true)][String] $GlobalEntryValue
)
# Get Global List
$store = Get-TfsWorkItemStore $TfsCollection
[xml]$export = $store.ExportGlobalLists();
$globalLists = $export.ChildNodes[0];
$globalList = $globalLists.SelectSingleNode("//GLOBALLIST[@name='$GlobalListName']")
# if no GL then add it
If ($globalList -eq $null)
{
$globalList = $export.CreateElement("GLOBALLIST");
$globalListNameAttribute = $export.CreateAttribute("name");
$globalListNameAttribute.Value = $GlobalListName
$globalList.Attributes.Append($globalListNameAttribute);
$globalLists.AppendChild($globalList);
}
#Create a new node.
$GlobalEntry = $export.CreateElement("LISTITEM");
$GlobalEntryAttribute = $export.CreateAttribute("value");
$GlobalEntryAttribute.Value = $GlobalEntryValue
$GlobalEntry.Attributes.Append($GlobalEntryAttribute);
#Add new entry to list
$globalList.AppendChild($GlobalEntry)
# Import list to server
$store.ImportGlobalLists($globalLists)
另一方面,可以参考本文来更新生成的相关工作项:在 vNext 中建立与工作项的关联
更新:
连接到 VSTS 的简单代码:
param(
[string]$address,
[string]$username,
[string]$password
)
$credentials = New-Object System.Net.NetworkCredential($username, $password)
$tfsCollection = New-Object Microsoft.TeamFoundation.Client.TfsTeamProjectCollection((New-Object System.URI($address)))
$wis = $tfsCollection.GetService([Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore])
然后,可以在 PowerShell 任务(生成或发布(参数文本框-address XXX -username XXX -password XXX
中指定参数。(用户名可以为空,并使用个人访问令牌作为密码(
另一方面,您可以导入Microsoft Team Foundation Server 扩展客户端包中的程序集文件。