在相关的TfvcTemplate.12.xaml中,解决方案是添加内置编号,如下所示:
<mtbwa:MSBuild CommandLineArguments="[String.Format("/p:SkipInvalidConfigurations=true
/p:BuildNumber={1} {0}", MSBuildArguments, BuildDetail.BuildNumber)]"
在Git模板中,参数略有变化,但在以下错误中执行相同操作
Compiler error(s) encountered processing expression
"String.Format("/p:SkipInvalidConfigurations=true /p:BuildNumber={1} {0}",
AdvancedBuildSettings.GetValue(Of String)("MSBuildArguments", String.Empty),
BuildDetail.BuildNumber)".
'Microsoft.TeamFoundation.Build.Client.BuildDetail' is not accessible in
this context because it is 'Friend'.
在此模板中公开BuildNumber的正确方法是什么?
答案 0 :(得分:1)
我必须经历两个步骤才能完成这项工作。
在您在步骤1中修改的同一模板中,点击&#34;运行MSBuild&#34;活动,查看属性和打开&#34; CommandLineArguments&#34;。我使用OctoPack进行Octopus Deploy,所以我的论点是这样的:
String.Format("/p:SkipInvalidConfigurations=true /p:BuildNumber={1} {0}
/p:OctoPackPackageVersion={1}", AdvancedBuildSettings.GetValue(Of
String)("MSBuildArguments", String.Empty), BuildDetail.BuildNumber)
如您所见,BuildNumber在那里指定,因此您可以删除我添加的Octopus属性。最后在你的msbuild文件中(例如.csproj),你可以使用内置编号,如$(BuildNumber)