我在TFS + TeamCity(TC)中有C#项目。现在我有2.0的标签1.0,trunk 2.0和TC build config。
我需要从标签启用build for 1.0(以及将来的标签2.0,3.0等)。
我已经创建了具有所有必要配置的常见TC项目MyProject。现在我添加了子项目' 1.0发布早午餐'。我正在进行goning以从根项目复制所有配置+更改该配置的VCS根。当我必须制作标签2.0时,我将创建子项目' 2.0发布早午餐'并将所有根配置复制到此子项目并更改VCS根目录。
这是支持以前项目的正常步骤吗?我应该使用配置模板吗?每个项目包含5个以上的配置,用于构建CI和完整版本,包含所有更改,E2E测试等。因此,这不仅仅是复制配置到子项目并更改VCS根目录。这似乎是每个项目的调整。我希望尽可能自动化。
答案 0 :(得分:0)
处理这种情况的一种方法是创建单个构建配置并在VCS主干中使用参数。因此,而不是使用
的VCS根https://server/svn/MyProject/trunk/
你会改用
https://server/svn/MyProject/%TagPath%/
然后在名为TagPath
的TeamCity构建配置中创建配置参数,并将其值设置为trunk
或tags/1.0
或其他任何内容。
要注意的一点需要注意的是,无论你如何做到这一点,如果你的构建过程将来发生变化你会遇到问题,在这种情况下你最终可能会创建单独的“旧”和“新”构建配置
答案 1 :(得分:0)
您可以使用Build配置模板。您可以在根项目级别创建模板,然后将其用于子项目。
请查看以下链接中的“从模板继承的重新定义设置”部分,了解如何使用参数更改子项目级别的值。
http://confluence.jetbrains.com/display/TCD8/Build+Configuration+Template