在2015年Xaml构建中引用BuildNumber

时间:2018-05-25 14:55:57

标签: tfs tfsbuild

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

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

一个例子是我们使用Windows服务发布任务。

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

我收到以下错误

  

&#34; WindowsServicePublishTask&#34;任务没有给出所需参数的值#34; BuildNumber&#34;。

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

1 个答案:

答案 0 :(得分:1)

您使用的是错误的环境变量。对于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