使用不同参数

时间:2017-02-01 14:15:14

标签: teamcity build-dependencies

我目前有两个TeamCity版本,FooFooNuGet

Foo是一个简单的C ++编译版本:从VCS检索源代码,编译它,将生成的exedll文件收集为工件。它使用配置参数(%buildConfiguration%)来选择是在Debug模式还是Release模式下编译。

FooNuGetFoo上有快照+工件依赖项。它在Foo的工件上运行CoApp,从而制作NuGet包。

问题是,我需要在该包中包含Release和Debug二进制文件。我曾希望在Foo上创建两个依赖项,并使用两种编译模式对它们进行配置,但它看起来并不像TeamCity提供的那样。

我看到另外两个可能的解决方案:

  • 创建Foo作为模板,然后从此模板中创建FooDebugFooRelease。这并不理想,因为Foo本身已经附加到模板上。

  • 创建一个额外的FooDebug版本,只需从Foo(调试)传递工件,然后让FooNuGet依赖于Foo(发布)和FooDebug。这将是一个kludge,但看起来对我最有希望。

我应该怎样做才能在Foo开头以FooNuGet的两个版本结束? 首先制作此配置参数是错误的吗?

更新

我预计的第二个解决方案根本不起作用。在选择构建以满足快照依赖性时,TeamCity显然会完全忽略参数。结果是FooDebug' s %buildConfiguration%被覆盖(实际上被忽视),我最终在FooNuGet中发布了两份Release工件。

1 个答案:

答案 0 :(得分:0)

您是否只能在Debug内置ReleaseFoo两个构建步骤?他们会生成DebugRelease二进制文件,然后您可以在FooNuGet中打包。