13 Maven-建立Hudson任務

來源:互聯網
上載者:User

標籤:

12 Maven-使用Hudson進行持續整合及系統配置

14 Maven-監視任務、使用者管理、工作目錄

1 建立Hudson任務

要建立一個Hudson任務來持續整合Maven項目,首先單擊頁面左邊的建立任務,然後就需要在頁面右邊選擇任務的名稱及類型。


這裡有三個類型,這裡說一下自由式的和多配置的,後者需要用哦過戶進行多一點的配置,而前者會使用Hudson內建的Maven,且從項目的POM中擷取足夠的資訊以免去一些配置。除非你十分熟悉Hudson,否則就還是選擇自由式的吧。至於監控的,我沒用過...



1.1 Hudson任務的基本配置
1:首先是項目的名稱和描述。當Hudson任務比較多的時候,簡潔且有意義的名稱及描述就十分重要。
2:接著就是一個重要的選項 Discard Old Builds。該選項配置如何拋棄舊的構件。Hudson每次執行一次構件任務,就可以儲存相應的原始碼、構建輸出、構建報告等檔案。很顯然,如果每次構件相關的檔案都儲存下來,將會漸漸消耗光磁碟空間。為此,Hudson提供了兩種方式讓使用者選擇保留哪些構件任務的相關檔案,分別為:
Days to keep builds:如果其值為非空的N,就僅保留N天之內的構件檔案。
Max # of builds to keep:如果#非空,就僅保留最多#個最近構件的相關檔案。

配置表示最多保留10個最近的構件。



1.2 Hudson任務的源碼倉庫配置
接著需要設定項目的源碼控制系統。在項目配置頁面Source Code Management部分,選擇Subversion選項按鈕,然後在Repository URL文本輸入項目的倉庫地址,一般來說,該部分的其他選項預設保留即可。

需要注意的是,如果訪問Subversion倉庫需要認證,Hudson會自動探測並提示使用者輸入認證資訊




單擊enter credential後,Hudson會彈出一個頁面讓使用者選擇認證方式並輸入認證資訊。輸入正確資訊後,Hudson就能讀取倉庫原始碼了。




1.3 Hudson任務的構建觸發配置

Build Triggers配置是觸發構件的方式,分別為:
--Build after other jobs are built:在其他項目構件完成之後構件本項目
--Build periodically:周期性地構件本項目
--Poll SCM:周期性地輪詢源碼倉庫,發現有更新的時候構件本項目。
如無特殊進階需要,一般不會選擇第一種方式;第二種方式會造成一些無謂的構件,如果幾次構件所基於的源代碼沒有任何區別,構件的輸出往往也就不會有變化;第三種方式就沒有這個問題,它能避免無謂的構件節省持續整合伺服器的資源。這種周期輪詢原始碼倉庫的方式實際上也是最常用的構建觸發方式。既然是輪詢,就需要配置輪詢的頻率,Hudson使用了UNIX任務調度工具,這種方式使用5個欄位表示不同的時間單位:
                                          分 時  日  月  星期幾

分:一小時中的分鐘(0-59)
時:一天中的小時(0-23)
日:一月中的日期(1-31)
月:月份(1-12)
星期幾:一周中的星期幾(1-12)
其中每個欄位除了可以使用其範圍內的值以外,還能使用一些特殊的字元:
*:星號表示匹配範圍內所有值。
M-N:連字號表示匹配M-N範圍內的所有值,如:1-5。
A,B...,Z:逗號表示匹配多個值,如0,15,0
*/X或M-N/X:範圍上加上斜杠表示匹配範圍內能被X整除的值,如 1-10/3 等同於 3,6,9

例子:
****:每分鐘。
5****:每小時中的第五分鐘。
*/10****:每隔10分鐘。
45 10**1-5:每周一到周五的上午10:45。
0,30*13*5:每月13號的每半小時。

對於一個健康的項目來說,常見的做法是:每隔10分鐘輪詢程式碼程式庫


備忘:可以使用#添加註釋,此外空白的行會被忽略。


1.4 Hudson任務的構建配置
接下來要告訴Hudson使用Maven命令構件項目。單擊Build部分中的Add build step 下三角按鈕,然後選擇:


再選擇一個安裝好的Maven版本,輸入Maven命令如clean deploy就可以了,


需要注意的是,日常持續整合任務如果成功的話,都會產生快照版的項目構件。如果維護了一個Maven私服,那麼持續整合任務就應當自動將構件部署到私服中,供其他項目使用。這也就是使用clean deploy的原因。至此Hudson任務配置基本完成,單擊Save按鈕儲存,之後如:

13 Maven-建立Hudson任務

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.