2013-03-08 79 views
7

我有以下問題:的Node.js和TeamCity的

在我們公司,我們開始一個新的Web項目,用了很多的.js .css文件。 我們公司是一家Java公司,意味着所有的開發工作都在Java/Maven/Team City中完成。

由於該公司已經在使用TeamCity的,我們也想使用它的網絡建設,我們試圖引進的Node.js和GruntJs在我們的構建過程。我想知道是否有人在TeamCity中設置/配置像Runner一樣的Node.js?

在我們想「承諾」的變化,然後構建年底,此版本將與Node.js的運動員來完成。我爲TeamCity找到了以下plugin

任何幫助將不勝感激

我使用其中包含幾個網站,如API,用戶和管理員門戶和單位/工作服/集成測試的Web項目GruntJS和TeamCity的

回答

4

。經過幾次原型設計之後,我最終決定將所有邏輯放在一個GruntJS文件中,以分別構建項目的每個部分。

要做到這一點,我添加了一個新的項目源代碼庫只是爲了部署。在那個項目中,我有我的基礎Gruntfile.js,它只是項目每個部分的子Grunt構建過程的入口點。我可以通過Grunt-CLI將參數傳遞給base,從而選擇我的構建目標,例如:grunt --target = api(注意:我也通過Version/Revision和其他東西,但爲了簡單起見,我不深入這個答案)

然後我創建了與序列中的所有可能的參數運行繁重的一個shell腳本。最後,在TeamCity中創建一個構建配置的步驟,以運行該shell腳本!

通過這樣做我獲得了很多的好處,如:

  1. 將源控制範圍內所有部署邏輯更好的可維護性。
  2. 每個開發者都可以訪問它,甚至可以在本地機器上構建
  3. TeamCity集成變得如此簡單,您也可以輕鬆將其移植到其他CI平臺!

如果要將每個項目放在單獨的存儲庫上,則可以使用基本GruntJS設置一個Deployment存儲庫並創建子模塊到其他存儲庫。