Teamcity-多个构建配置

Teamcity-多个构建配置,teamcity,Teamcity,我是TeamCity的新手,已经玩了几天了。我的Visual Studio解决方案包含以下项目: SharedComponents:这些是其他项目使用的共享实体和异常类 达尔 DAL.测试:DAL的单元测试 BLL BLL.Tests:BLL的单元测试 Web:ASP.NET MVC3项目 目前,我已经建立了一个构建配置,它将编译解决方案,并在将更改签入SVN后立即运行所有测试。这很好,但是有些情况下我不希望发生这种情况: 如果只对Web项目进行了更改,则只应重建该项目 如果更改是对BLL

我是TeamCity的新手,已经玩了几天了。我的Visual Studio解决方案包含以下项目:

  • SharedComponents:这些是其他项目使用的共享实体和异常类
  • 达尔
  • DAL.测试:DAL的单元测试
  • BLL
  • BLL.Tests:BLL的单元测试
  • Web:ASP.NET MVC3项目
目前,我已经建立了一个构建配置,它将编译解决方案,并在将更改签入SVN后立即运行所有测试。这很好,但是有些情况下我不希望发生这种情况:

  • 如果只对Web项目进行了更改,则只应重建该项目
  • 如果更改是对BLL的,那么应该重建BLL、BLL.Tests和Web,然后执行BLL.Tests
设置上述场景的最佳方法是什么。如果你能帮忙,我将不胜感激


非常感谢

您可以将构建配置分成几个部分:

  • DAL-触发DAL和DAL.Test中的更改,使用msbuild生成它们并运行测试
  • BLL-与DAL相同
  • Web-触发Web项目中的更改并重建它
  • 对于每种类型,您应该使用VCS触发器的“触发器规则”配置签出路径。
    添加到第二个配置“完成触发器”,该触发器取决于第一个配置,第三个配置相同,取决于第二个配置。所以,如果您推动与Dal相关的更改,它将按照Dal->BLL->Web的顺序构建所有配置。如果您只在BLL中进行更改,则链将是BLL->Web,Web更改将只触发一次Web构建。

    非常感谢。它就像一个符咒!!我还向每个构建添加了VCS签出规则,以便只检测和下载与每个项目相关的更改