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

我在 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/

相关文章:

maven - Gradle下载依赖错误

c++ - 带有子目录的 CMake

objective-c - 为什么最终二进制文件的大小会比静态库的大小小得多?

gradle - 用gradle复制树并改变结构?

c# - 编译器构建错误 : The call is ambiguous between the f

build - 是否可以将命令行变量传递给 bitbake 构建?

c++ - 在 Eclipse 中设置构建输出目录 - c++

android - com.android.ide.common.process.ProcessEx

database - 如何从现有数据库数据生成 Symfony 固定装置 YAML?

java - ANT:如何将 "add"路径元素从一条路径转换为第二条路径?