引用 2015 年的 BuildNumber Xaml 个版本

Referencing BuildNumber in 2015 Xaml Builds

我们正在从 tfs 2012 迁移到 tfs 2018,并将我们的 XAML 构建模板转换为 2015。

在大多数情况下,使用默认构建模板 TfvcTemplate12 效果很好。但是,当项目引用内部版本号时,它会失败。

一个例子是当我们使用 windows 服务发布任务时。

<WindowsServicePublishTask Publish="$(DeployFileService)" ServiceDisplayName="$(ServiceDisplayName)" Destinations="$(ServiceDestinations)" SourcePath="$(OutDir)" BuildNumber="$(BuildNumber)" CreateDropFolder="$(CreateDropFolder)" />

我收到以下错误

The "WindowsServicePublishTask" task was not given a value for the required parameter "BuildNumber".

如何使用 TfvcTemplate12 引用内部版本号?

您使用了错误的环境变量。对于 XAML 构建:

TF_BUILD_BUILDNUMBER 构建的构建号。例如:CIBuild_20130613.6.

更多详情请参考TF_BUILD environment variables

您可以使用 TF_BUILD 环境变量来获取构建过程逻辑所需的关键数据位。例如,您可以获得源文件夹的路径或包含要删除的输出的文件夹的路径。

  • TF_BUILD 环境变量
  • 在 MSBuild 中使用环境变量
  • 在程序或脚本中使用环境变量
  • 在自定义构建过程中使用环境变量

向 MSBuild 参数添加类似以下选项的示例:

/p:DeployOnBuild=true;DeployMethod=Package /p:DefaultPackageOutputDir=”$(TF_BUILD_BINARIESDIRECTORY)”\WebPackage