介紹CruiseControl是一個針對持續構建程序(項目持續集成)的框架,它包括一個email通知的插件,Ant和各種各樣的CVS工具。CruiseControl提供了一個Web接口,可隨時查看當前的編譯狀況和歷史狀況。CruiseControl是CI服務器的老者,誕生已是多年,在許多方面,CruiseControl服務器已經成為持續集成實踐的同義詞。而現在,CruiseControl已發展成為一個家族式系統,包括CruiseControl.java、CruiseControl.net、CruiseControl.ruby等適應不同語言環境的實現,其強大的插件和擴展能力也是諸多同類系統無法比你的。
CI過程會經常構建軟件組件;在許多情況下,每當源代碼 存儲庫(比如 Subversion 或ClearCase)中的代碼發生變化時,都要構建軟件組件。 CI的好處是:經常構建軟件可以確保盡早遇到問題(比如代碼缺陷),避免問題在軟件開發 周期晚期變復雜時才被發現。
持續集成環境的重要性在當今的軟件開發中無需再表述,最常用的工具就是CruiseControl(以下簡稱為CC)。下圖描述CC的工作方式,讓大家對CC有個直觀的認識。
一:cruisecontrol介紹CruiseControl:簡稱CC,持續集成工具,主要提供了基于版本管理工具(如CVS)感知變化或每天定時的持續集成,并提供持續集成報告、Email、Jabber等等方式通知相關負責人,其要求是需要進行日構建的項目已編寫好全自動的項目編譯腳本(可基于Maven或Ant)。在這里以一個項目來簡要的說說cc的使用,通常項目對于日構建的類型的需求分為兩種:1、每天的定時自動集成。2、感知版本管理工具中的變化而進行自動集成。項目對于日構建的目標通常為:1、感知版本管理工具的變化,如發現有變化,則進行集成。2、調用項目編譯腳本進行項目集成。3、合并項目編譯腳本產生的單元測試、功能測試的日志。4、將集成報告發布至網站中。5、將集成的結果以郵件、jabber等等方式通知相應的負責人。