powershell - 如何在 TFS2013 构建中将构建参数和其他信息传递给 powershell 脚本?

标签 powershell tfs build

我在 TFS 2013 中使用默认构建模板,我如何从 powershell 脚本访问构建参数(例如,构建下的变更集编号、构建目录、源路径、tfs 地址、代理信息...)?

示例情况:我想在 Pre-Build 脚本上重写所有程序集信息版本信息,其中版本号的最后一部分是变更集号,我可能可以在脚本内使用 tf.exe 命令获取变更集,但我不仅仅是我想在构建期间从构建代理那里知道。

我尝试在脚本中运行 Get-Variable 并将其写入构建,但我没有在脚本中找到任何特殊变量。

我是否遗漏了什么,或者默认构建模板在执行期间根本不会将任何变量传递给 powershell 运行时?

最佳答案

想通了。

变量会自动写成环境变量,dir env: 向我展示了 tfs 会自动创建以下变量:

 TF_BUILD                       True
 TF_BUILD_BINARIESDIRECTORY     C:\WP0\101\bin
 TF_BUILD_BUILDDEFINITIONNAME   TfsBuildTest2
 TF_BUILD_BUILDDIRECTORY        C:\WP0\101
 TF_BUILD_BUILDNUMBER           TfsBuildTest2_20140310.3
 TF_BUILD_BUILDREASON           Manual
 TF_BUILD_BUILDURI              vstfs:///Build/Build/6521
 TF_BUILD_DROPLOCATION
 TF_BUILD_SOURCEGETVERSION      C22404
 TF_BUILD_SOURCESDIRECTORY      C:\WP0\101\src
 TF_BUILD_TESTRESULTSDIRECTORY  C:\WP0\101\tst
 TFS_REG_CRED                   Build

关于powershell - 如何在 TFS2013 构建中将构建参数和其他信息传递给 powershell 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22293671/

相关文章:

c# - 如何以编程方式从 TFS 获取完整的文件夹历史记录?

java - 我怎样才能有单独的调试版本和发布版本的 gradle 项目来引入同一类的不同版本?

syntax - powershell中的条件执行(&&和||)

tfs - 找不到具有以下功能的代理 Xamarin.Android

performance - 使用 Powershell 的进程的网络使用情况

tfs - Eclipse TFS 插件检查/取消选中所有挂起的更改

使用 Google Maps API 构建应用程序时出现错误

jenkins - 你如何在 Jenkins 中获得构建持续时间?

regex - 打开文件并使用正则表达式对其进行过滤

windows - PowerShell 5 AppSettings 错误?