工作流的一個例子如下:
當看到工作流插件使用的Groovy構(gòu)建腳本時,你可能會感到Jenkins只是一個有著web界面的構(gòu)建工具而已,這種想法多少有點道理。
Jenkins文件系統(tǒng)結(jié)構(gòu)概覽
了解構(gòu)建如何最終反映到文件系統(tǒng)中一般還是挺有幫助的。
用Fedora包的話,Jenkins任務(wù)存儲在/var/lib/j enkins/jobs。
每一個任務(wù)都有自己的目錄,任務(wù)描述XML文件和稱為工作區(qū)(workspace)的構(gòu)建用目錄就存儲在這個目錄里。任務(wù)XML文件可以備份到另一臺服務(wù)器上,以便能夠在災(zāi)難性故障后重建Jenkins服務(wù)器。專用的備份插件也是一個可選方案。
構(gòu)建會消耗掉大量的空間,所以你有時候可能需要手動清理空間。
當然這種做法不應(yīng)該是常態(tài)。你應(yīng)該配置Jenkins只保留支持一定構(gòu)建數(shù)量的空間,或者是配置管理工具以便在必要時清除空間。
另一個需要深入了解文件系統(tǒng)的理由是,當構(gòu)建神奇地失敗時,需要調(diào)試失敗的原因。一個常見的原因是構(gòu)建服務(wù)器的狀態(tài)與預(yù)期不符。例如,對于Maven來說,損壞的依賴可能會搞垮構(gòu)建服務(wù)器上的本地代碼庫。