首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TFS 2017有能力将构建定义导出并导入到远程服务器吗?

TFS 2017有能力将构建定义导出并导入到远程服务器吗?
EN

Stack Overflow用户
提问于 2018-02-14 01:49:51
回答 1查看 3.2K关注 0票数 2

我们在我们的内部服务器上安装了2017,我们在沙箱环境中构建了我们的.NET代码,但是我们希望能够手动或以自动化的方式远程推出新的构建定义或更新(对我们的客户端-生产服务器)?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-14 05:51:54

是的,您可以在TFS 2017中导出和导入构建定义。

在这种情况下,如果您拥有从远程服务器访问和创建构建定义的权限,那么您可以直接导出/导入构建定义。参考下面的截图。

此外,您还可以使用扩展导出/导入生成定义

要更新构建定义,可以使用REST (更新生成定义)和PUT方法:

例如:

代码语言:javascript
复制
PUT http://server:8080/tfs/DefaultCollection/Project/_apis/build/definitions/29?api-version=2.0

Content-Type: application/json
{json body here}

更新:

您可以参考下面的示例来更新构建定义:

代码语言:javascript
复制
Param( 

   [string]$baseurl = "http://server:8080/tfs/Collection",   

   [string]$projectName = "ProjectName",

   [string]$builddefinitionID = "29",

   [string]$keepForever = "true", 

   [string]$user = "username", 

   [string]$token = "password" 

) 

# Base64-encodes the Personal Access Token (PAT) appropriately 

$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $user,$token))) 


function CreateJsonBody 

{ 

    $value = @" 

{ 

  body here

}  


"@ 



 return $value 

} 


$json = CreateJsonBody 


$uri = "$baseurl/$($projectName)/_apis/build/definitions/$($builddefinitionID)?api-version=2.0" 

$result = Invoke-RestMethod -Uri $uri -Method Put -Body $json -ContentType "application/json" -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} 

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48778485

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档