我被要求開始爲我們公司內部正在開展的一些(.NET和PHP)項目設置持續集成環境。由於我還沒有那麼有經驗,這就需要在設置這些環境的最佳實踐中進行深入研究。針對多個項目的推薦TeamCity設置
到目前爲止,我還沒有能夠解決的一個主要問題是,是否推薦對所有不同的(獨立的)項目使用一箇中心TeamCity服務器,還是最好將它們分開通過爲每個單獨的項目安裝TeamCity?
我對這兩種方法的優缺點都很感興趣,所以如果有人能提供他們的意見,我會非常感激。
我被要求開始爲我們公司內部正在開展的一些(.NET和PHP)項目設置持續集成環境。由於我還沒有那麼有經驗,這就需要在設置這些環境的最佳實踐中進行深入研究。針對多個項目的推薦TeamCity設置
到目前爲止,我還沒有能夠解決的一個主要問題是,是否推薦對所有不同的(獨立的)項目使用一箇中心TeamCity服務器,還是最好將它們分開通過爲每個單獨的項目安裝TeamCity?
我對這兩種方法的優缺點都很感興趣,所以如果有人能提供他們的意見,我會非常感激。
擁有多個TeamCity安裝絕對沒有什麼優勢。單獨安裝需要單獨的服務器(或至少端口)和單獨的許可證(如果不使用免費版)。
TeamCity支持一個項目層次結構(基本上是一個用於構建配置的容器),因此您可以在同一個安裝中創建儘可能多的項目,每個項目都有一組構建配置。 TeamCity還支持多個構建代理,因此您可以在不同的計算機上同時運行構建,無論它們是基於Windows還是Linux。
除非您有一些TeamCity的訪問控制權限無法滿足的特殊安全要求,或者您正在運行數百個項目和代理程序,並且性能很差,否則我認爲沒有任何理由以多個開始安裝。
如果將來需要出現,您可以隨時將項目遷移到另一個安裝而不會太痛苦。
我可以看到如下的優勢,以實例分離:
不利的一面:
試圖總結:如果項目共享很多(工件,源代碼,角色,管理員,發佈週期...),將它們放在一個實例上。如果他們不這樣做,那麼你可以考慮將它們放在不同的實例上以獲得上述優勢,但是你必須準備好支付價格,特別是在管理方面。
未使用TC,但我看不到有多個安裝的優勢 - 聽起來像會導致更多的維護工作。首先用最簡單的方法,然後從那裏調整,如果你的工作流程變成需要它。 – halfer