Visual studio 2015 MS发布管理系统变量

Visual studio 2015 MS发布管理系统变量,visual-studio-2015,ms-release-management,Visual Studio 2015,Ms Release Management,我正在使用Release Management 2015并进行代理部署。我想访问TFS内部版本号,并将其用作部署的一部分。RM文档说明,从RM 2013 U4开始,系统变量可供使用。文档表明它们可用于任何类型的部署,但是,我已经了解到它们仅可用于vNext(无代理)部署 不幸的是,没有任何例子可以为如何访问它们提供任何指导。 是否有人提供了如何在部署模板中引用系统变量的示例?在vNext发布模板中,使用PS/DSC操作添加部署;设置此操作以执行PowerShell脚本。 在该脚本中,您可以访问几

我正在使用Release Management 2015并进行代理部署。我想访问TFS内部版本号,并将其用作部署的一部分。RM文档说明,从RM 2013 U4开始,系统变量可供使用。文档表明它们可用于任何类型的部署,但是,我已经了解到它们仅可用于vNext(无代理)部署

不幸的是,没有任何例子可以为如何访问它们提供任何指导。
是否有人提供了如何在部署模板中引用系统变量的示例?

在vNext发布模板中,使用PS/DSC操作添加部署;设置此操作以执行PowerShell脚本。 在该脚本中,您可以访问几乎所有的系统变量:

Write-Verbose "BuildNumber = $($BuildNumber)" -Verbose

通过引用
$(BuildNumber)
,可以访问基于代理的发布模板中组件中的内部版本号。您必须将
$(BuildNumber)
作为参数传递给组件,这意味着定义
\uuuuu BuildNumber\uuuuu
参数并传入值。当然,您还必须使用绑定到TFS构建定义的发布模板


版本管理中的用户可定义系统变量用于vNext版本,而不是基于代理的版本。

谢谢,但我没有使用vNext模板。这是否适用于代理部署?MSDN声明系统和配置变量仅适用于vNext模板:。正如这里提到的()您可以使用$(PackageLocation)我尝试使用XCopy部署器作为工具构建一个组件,并添加一个配置变量,随后在模板中设置为$(BuildNumber)。我得到的令牌是“$(BuildNumber)”。我是否必须在命令的参数中引用系统变量才能获得值?@mcolegro我更新了答案,以便更清楚地了解传递
$(BuildNumber)
值的正确方法。谢谢。有趣的是,如果我的构建定义名称包含空格,$(BuildNumber)只显示第一个单词$(buildNumber)显示第二个单词。我将生成定义名称更改为没有空格。