如何在TFS 2017中访问构建文件夹编号

时间:2017-07-26 21:21:35

标签: tfs build-agent

我通常告诉TFS通过$(build.sourcesdirectory)使用哪个文件夹转换为C:\ Builds \ 1 \ s。

但是,我需要重新打包部署zip,因此我必须将Content\C_C\Builds\myproj\1\s添加到我的CI中。

这并不是很好,因为1可以因开发工作而改变。

我是否可以使用变量或技术将1替换为变量?

我试过$(Agent.Id)没有运气......

1 个答案:

答案 0 :(得分:2)

您可以使用PowerShell从变量$(build.sourcesdirectory)中检索数字,并将值传递给新变量。

动态获取数量示例:

$string = "$env:BUILD_SOURCESDIRECTORY"
#$string = "E:\andyli-v\01Agent\_work\6\s" (The length is 29, the number '6' in the string is the 27th character, So get the substring as (26,1) means get one character behind the 26th character)
$parameter = $string.Substring(26, 1)
Write-Host "BUILD_SOURCESDIRECTORY is :" $string
Write-Host "The String length is : "$string.Length
Write-Host "The number is : "$parameter

如果在同一个脚本中执行操作,您可以直接使用 $ parameter 来获取该数字。

设置变量:

如果你想要一个变量,你可以通过PS设置它:

Write-Output ("##vso[task.setvariable variable=GetNumber;]$parameter")

您可以参考那里的文章来设置变量:

enter image description here