3

我有一个 MSBuild/C# 项目,其目标试图访问应该由 TeamCity 设置的 `%build.counter% 参数。

<Target Name="TraceBuildParameters" BeforeTargets="BeforeBuild">
    <Message Text="Build.Counter=$(build_counter)" />
</Target>

我可以在 TeamCity 项目构建设置中访问它,但在脚本中这些都不起作用:

build.counter // msbuild error
build_counter // null
system_build_counter // null
teamcity_system_build_counter // null
teamcity_build_counter // null

是否可以访问此参数,是否暴露?

4

1 回答 1

7

TeamCity 会将任何参数(不是参数)发送system到您的 MSBuild 脚本。configuration如果您明确需要该%build.counter%值,最简单的方法是设置一个system参数,如下所示:

system.BuildCounter = %build.counter%

然后您应该能够将其引用为$(BuildCounter).

或者,build.number已作为$(build_number). 根据您是否在Configuration -> General Settings选项卡上自定义内部版本号,这可能会节省对额外参数的需求。

于 2014-09-29T01:45:27.613 回答