2012-08-23 145 views
2

我對TeamCity來說很新,並且已經玩了幾天。我的Visual Studio解決方案具有以下項目:團隊城市 - 多種構建配置

  • SharedComponents:這些共享實體使用的其他項目
  • DAL
  • DAL.Tests &異常類:單元測試DAL
  • BLL
  • BLL.Tests:BLL的單元測試
  • Web:ASP.NET MVC3項目

目前我有一個構建配置,它將編譯解決方案,並在SVN檢入更改後立即運行所有測試。這是好的,但也有一些情況下,我不希望這樣的事情發生:

  • 如果變化只對Web項目,僅該項目應該被重建
  • 變更是否對發BLL,然後BLL,BLL.Tests和Web應該重建,然後執行BLL.Tests。

設置上述場景的最佳方法是什麼?如果你能提供幫助,我將非常感激。

非常感謝

回答

3

您可以將構建配置拆分幾個:

  1. DAL - 觸發在DAL和DAL.Test變化,使用的MSBuild和運行測試,建立他們。
  2. BLL - 與DAL相同。
  3. Web - 觸發Web項目中的更改並重建它。

對於每個應使用VCS觸發器的「觸發器規則」來配置檢出路徑。 添加到第二個配置'完成觸發'取決於第一個配置和第三個配置相同取決於第二個。因此,如果您推送與Dal相關的更改,它將按照DAL - > BLL - > Web的順序構建所有配置。如果您只在BLL中進行更改,則鏈將爲BLL - > Web,並且Web更改將只觸發一個Web構建。

+0

非常感謝。它像一個魅力工作!我還爲每個版本添加了VCS簽出規則,以便只檢測和下載與每個項目相關的更改 – user1433470