建構Jenkins+SVN+Maven持續整合環境

姜志民 2017/03/01 08:31:14
4924






主題

建構Jenkins+SVN+Maven持續整合環境

介紹

建構持續整合環境可以幫開發人員專注於開發中,一些重覆、反覆、持續進行的工作,就可以交給Jenkins來處理,例如:每日程式開發完成後,要進行的自動化測試、程式碼分析、建置source code、自動部署…等工作。Jenkins再將每日進行的結果email通知開發人員,讓我們的軟體一直保持於高品質的狀態。

作者

姜志民

版本

1.0

產出日期

2017 / 02/ 14



1 目的

建構持續整合環境可以幫開發人員專注於開發中,一些重覆、反覆、持續進行的工作,就可以交給Jenkins來處理,例如:每日程式開發完成後,要進行的自動化測試、程式碼分析、建置source code、自動部署…等工作。Jenkins再將每日進行的結果email通知開發人員,讓我們的軟體一直保持於高品質的狀態。




2 動手做做看

筆者要建構的持續整合環境,可以定時從svn server取得最新source code進行編譯,編譯完成後封裝成war檔並自動部署到tomcat server上,這一連串的動作可以全部交給Jenkins處理,讓開發人員不必浪費時間在這些動作上。



在已經完成的Maven專案中的pom.xml新增下列設定,此設定的作用是自動部署到tomcat server上。



在Jenkins官網 https://jenkins.io/ ,Jenkins有提供多種方式的安裝檔,筆者是下載2.32.2.war。而執行方式有兩種,第一種是將war檔部署至tomcat上,第二種是java -jar jenkins.war,筆者是採用前者方式。



2.32.2.war部署至tomcat後,在瀏覽器中輸入http://192.168.2.131:8080 / jenkins / (tomcat server的ip),就可以看到Jenkins畫面,因為是第一次初始化,必須按照網頁上指示進行解鎖。



選擇左邊的「Install suggested plugins」進行安裝。



等待plugins安裝完成。



輸入使用者相關資料,再按右下角「Save and Finish」。



在瀏覽器中輸入http://192.168.2 .1 31 :8080 / jenkins / (tomcat server的ip),登入Jenkins系統。



點選「管理Jenkins」。



進入「管理外掛程式」。



點選「可用的」頁籤。



過濾條件是「Maven Integration plugin」,勾選後直接安裝。



在「管理Jenkins」中,點選「Global Tool Configuration」。



找到「Maven」項目,按「新增Maven」按鈕。



Maven的設定如下:



找到「JDK」項目,JDK設定如下,設定完畢後再按「Save」。



點選「新增作業」。



作業的設定如下:



在「原始碼管理」頁籤,設定Subversion相關設定,svn的帳號密碼則是進入Add->Jenkins設定。



svn的帳號密碼設定完畢後再按「Add」。



設定完畢後如下圖:



在「建置觸發程序」頁籤中,此設定作用是「執行此作業時間點」,為了驗證定時自動部署,在「排程」中輸入 */5 * * * *,所以會每五分鐘部署一次。



在「前置步驟」頁籤中,輸入如下設定,此設定主要會進行編譯封裝成war檔並自動部署至tomcat server上,設定完成後再按「儲存」。



可以等待五分鐘讓Jenkins自動執行,或是直接按下「馬上建置」按鈕。



開始建置就會在左下角出現進度條。



按下可以看到建置過程的訊息。



建置過程的訊息都會詳細紀錄,建置失敗原因也會記錄下來。



登入tomcat管理介面網頁,可以看到已經部署上去的專案。






姜志民