一、安裝Jenkins
地址http://mirrors.jenkins-ci.org/下載適合的Jenkins版本。
Windows最新穩定版的Jenkins地址為:http://mirrors.jenkins-ci.org/windows-stable/jenkins-1.409.1.zip
把Jenkins 1.409.1版解壓,把得到的war包直接扔到tomcat下,啟動tomcat,Jenkins就安裝完畢,是不是很簡單啊。
二、配置Jenkins
1、打開http://10.3.15.78:8080/jenkins/,第一次進入里面沒有數據,我們需要創建job,我們這有2個項目,需要創建2個job。http://10.3.34.163:9890/jenkins/
2、點擊左上角的new job,在new job頁面需要選擇job的類型,Jenkins支持幾種類型,我們選擇“構建一個maven2/3項目”
3、點擊OK按鈕后,進會進入詳細配置界面,詳細配置界面的配置項很多,不過不用怕,大部分使用默認配置就可以了,下面就說說我們需要修改的幾個地方:
3.1)Source Code Management
因為我們使用SVN管理源碼,所以這里選擇Subversion,並在Repository URL中輸入我們的SVN地址:
http://10.3.34.163:9880/XXXX/trunk/
輸入SVN庫的URL地址后,Jenkins會自動驗證地址,並給予提示。
點擊紅色字體部分的enter credential鏈接,進入頁面
設置好訪問SVN庫的用戶名和密碼后,點擊OK按鈕
設置成功。點擊Close按鈕,返回之前的Source Code Management頁面。此時不再有紅色警告信息了。
3.2)配置自動構建的計划,假設我們想讓項目中每天12點和晚上8點自動構建一次,只需要在Build Triggers中選擇Build periodically,並在Schedule中輸入 0 12,20 * * *。
我配置的是每晚8點自動構建
注:Schedule的配置規則是有5個空格隔開的字符組成,從左到右分別代表:分時天月年。*代表所有,0 12,20 * * * 表示“在任何年任何月任何天的12和20點0分”進行構建。
3.3)配置到這里,可能有人發現在Build配置節點,有紅色錯誤信息,提示
Jenkins needs to know where your Maven2 is installed.
Please do so from the system configuration.
是因為Jenkins找不到maven的原因,點擊"system configuration",是system configuration的maven配置中添加maven目錄就OK,如下圖:
我設置了JRE 6和MAVEN 3的安裝目錄。
點擊左下角的SAVE按鈕,保存設置。
3.4)保存好所有配置后,我們第1個job就算是完成了。
3.5)創建第2個job,配置和上面的配置相同。只需把svn地址改成:http://localhost/svn/Web
三、自動編譯
在經過上面的配置后,回到Jenkins首頁,在首頁可以看到剛才添加的2個job
點擊某1個job后后面的"Schedule a build"圖片手動構建,點擊完后,會在左邊的Build Queue或者Build Executor Status顯示正在構建的任務,在自動構建完后,刷新頁面,就可以看到構建結果了,如何某個項目構建失敗,點擊項目后面的構建數字(從1開始遞增)進入項目的"Console Output "可以查看項目構建失敗的原因。當然我們也可以配置把構建失敗的結果發到郵箱。
到目前為止,1個簡單的自動構建環境就搭建好了,很簡單吧。
四、自動測試
在maven的pom.xml中配置test resouce和test class。
在Jenkins中新建一個mvn batch,如下
- :@echo off
- setlocal
- set my.dir=%CD:~-11%
- if not "%my.dir%" == "\myproject" goto lerr1
- goto lgo
- :lerr1
- echo do at myproject directory
- goto lend
- :lgo
- call mvn clean
- call mvn test
- :lend
- endlocal
啟動之后,就可以自動測試所有的Junit
五、自動部署
看完上面發現Jenkins配置真的很簡單,幾分鍾就搭建好自動構建環境,但環境搭建好后發現1個問題,現在是能自動構建了,但是構建好的web.war都還是在Jenkins目錄下,並沒有發布到tomcat中,還需要手動copy過去?
這是個問題,不過別急,要達到自動部署的目的,需要安裝1個Jenkins的部署插件。選擇“系統管理”菜單的“管理插件”:
選擇“可選插件”,找到Deploy Plugin 1.8插件,選擇並安裝它。
注:Deploy Plugin 1.8插件支持Tomcat 4.x/5.x/6.x/7.x ,JBoss 3.x/4.x ,Glassfish 2.x/3.x
點擊底部的“安裝”按鈕,耐心等待,直到Deploy Plugin完成,顯示Success。
選擇框打鈎,Jenkins會自動重啟:
此時,在插件管理的“已安裝”Tab頁,可以看到部署插件已安裝完畢。
重新進入web的configure 配置界面,在最下面會發現多處1個配置項,讓我們配置tomcat的基本信息
注:war file使用的是Jenkinsworkspace的相對目錄,hudon默認的目錄在:
C:\Documents and Settings\用戶名\.Jenkins\
workspace目錄:C:\Documents and Settings\用戶名\.Jenkins\ jobs\web\workspace\
最終產生的war在:C:\Documents and Settings\用戶名\.Jenkins\ jobs\web\workspace\Web\target\web.war
注:可支持遠程部署,用Jenkins做部署機器,和運營機器分開管理
保存配置再重新構建一次,打開tomcat的webapps目錄,發現web.war終於過來了,大功告成。