CruiseControl 的 108 種排程模式

2021-04-22 11:42:08 字數 1224 閱讀 7704

/*************************/

"擁抱變化" 是敏捷的態度之一, cruisecontrol 正是來實證這種態度的作品. 多種型別的"變化"都會觸發cruisecontrol的一次構建過程.

我們知道cruisecontrol能根據源**的變化來排程一次構建, 但你知道cruisecontrol支援多少種排程模式嗎?

---切爾斯基

/*************************/

這是 cruisecontrol 最經典的排程模式, 可以參見

這是另外一種常用的排程模式, 通常用於 nightly build. 但是 cruisecontrol 並沒有從架構級別上支援這種排程, 基於時間的排程被分散到各個外掛程式中, 得自己去看文件尋找

以常用的幾種外掛程式為例, 我們來看看cruisecontrol支援的幾種基於 "時間變化" 的排程模式

2.1 一天之內的排程

從這裡我們可以看出cruisecontrol缺少對 的支援

2.2 一周之內的排程

這樣就有總共 3*2=6 種基於時間的排程

通常我們會將大的專案分成多個小專案來組織構建, 這些小專案之間有依賴關係, 某個專案要等待另外乙個成功之後再構建才有意義, 比如說要用到其它project的構建產物來作為輸入, 我們將這種情況稱之為build pipeline

cruisecontrol並沒有對專案之間的依賴, 或曰build pipeline提供顯式建模或支援, 只是有一些外掛程式來區域性支援

/*************************/

由於 可以包含多個外掛程式, 並且預設是 or 的關係, 所以你基本上可以正交的應用前面提到的所有排程模式, 這樣你就能得到 3 * 6 * 6 = 108 種排程模式

下面描述兩種令上述模式都失效的排程模式

/*************************/

/*************************/

在使用cruisecontrol的過程中, 通常會遇到某些構建比較耗時, 或者檢查整個源**倉庫的時間過長等情況. 對此 cruisecontrol 提供了一些優化措施

/*************************/

CruiseControl 日誌檔案過大

zoundrydocument 前一陣,為了提公升公司 質量,改善開發流程,在我們專案組內,引入了持續整合伺服器,由於我們使用vs作為開發工具,所以選擇使用cruisecontrol.net,下面簡稱cc。server和dashboard的部署,基本看附帶的文件就能搞定,我建立了乙個簡單的流程,每隔...

CruiseControl深入分析

cruisecontrol是綠色版,就是說,他的核心程式與windows的登錄檔沒有關係,系統重灌了以後程式一樣可以使用。這裡講的是版本是2.2.8,較舊的版本的cruisecontrol可能與新版的使用方法與目錄結構都有所不同。接下來,我們來看看cruisecontrol安裝後的目錄結構 crui...

持續整合之CruiseControl

持續整合用於定時檢測 構建專案。常用的持續整合工具有cruisecontrol,簡稱cc。那麼我們是如何部署專案到持續整合伺服器中的呢?首先我們可以將我們的專案copy到cc根目下的project目錄下,然後通過在cc根目錄下得config.xml檔案中進行專案配置,具體配置主要參照裡面的demo就...