Jenkins配置自動化構建

轉自: http://blog.sina.com.cn/s/articlelist_3053349671_14_1.html

Jenkins 簡介和安裝(一)

(2014-12-02 21:18:13)
 
 
 
Jenkins,以前叫作Hudson,是基於Java開發的一種持續集成工具,用於監控持續重複的工做,包括:
一、持續的軟件版本發佈/測試項目。
二、監控外部調用執行的工做
Jenkins win下安裝
1.下載Jenkins 
2.安裝jdk、tomcat環境
3.將Jenkins.war 部署至tomcat,啓動tomcat,此時Jenkins部署成功,Jenkins的訪問 http://serverip:8080/jenkins,看到下面的頁面Jenkins啓動成功 Jenkins <wbr>簡介和安裝(一)
4.Jenkins在window下的默認工做空間用戶的目錄下.jenkins,通常狀況下咱們須要本身更改一下,由於放在默認路徑有些不方便,這個能夠根據習好確認,我這裏更改成D:\Jenkins\Jenkins。
設置系統環境變量
Jenkins <wbr>簡介和安裝(一)

5.此時咱們主目錄配置成功,系統管理->系統配置->主目錄,以下圖顯示
Jenkins <wbr>簡介和安裝(一)
 
 
此時咱們已經完整的將Jenkins的初始化工做搞得,下面咱們來創建一個工程吧
 

Jenkins新建項目(二)

(2014-12-02 21:49:46)
 

我這裏主要採用Jenkins 構建maven2/3項目,由於咱們目前的開發語言採用的是java,而打包工具採用的maven,因此如下我配置的項目均採用的是maven2/3項目,構建Maven項目時,首先咱們須要安裝配置外圍環境mavenhtml

1.maven環境安裝,因爲maven的環境配置比較簡單,以前的博客也說過此處不在詳解java

2.Jenkins中配置maven的環境變量,Jenkins中配置環境變量的時,若是你沒有安裝maven能夠直接安裝,若是你安裝maven,那麼只要設置環境變量便可web

Jenkins新建項目(二)

 
   
 若是環境中沒有安裝maven只要勾選自動安裝,便可安裝,在安裝的過程當中你能夠選擇安裝的版本,並且有時候構建的項目中的maven版本不一樣,咱們能夠設置多個maven環境,只要點擊新增maven便可配置shell

3.配置好maven之後,咱們下面要配置maven的配置文件,其實這裏分爲局部和全局配置文件,若是你安裝的maven保持默認,那麼這裏設置保持默認便可,若是你的maven的配置文件變動只要選擇"Settings file in filesystem",指定setting文件的位置便可。數據庫

Jenkins新建項目(二)
4.此時咱們要配置咱們的最重要的東西jdk,他的配置跟maven的配置同樣,只要指定jdk的環境變量便可,同時jdk也能夠指定多個版本編程

Jenkins新建項目(二)

目前爲止咱們把因此的外網環境均配置完成,熟話說磨刀不誤砍柴。windows

5.新建maven2/3項目,輸入項目的名稱demo,點擊OK,此時咱們的項目建立完成了,那麼咱們建立這個項目確定要作一些什麼事情,下面我介紹咱們要作的事情tomcat

Jenkins新建項目(二)

下面我介紹一下Jenkins最簡單的功能,獲取代碼,編譯代碼,打包,這裏咱們採用的是SVN做爲代碼管理服務器,首先咱們須要在Jenkins服務器 上安裝svn的客戶端,而且svn能夠自動獲取svn服務器的代碼,那麼這裏就有一個權限,只要在Jenkins服務器上驗證經過便可,這裏我不詳細解釋 了服務器

6.源代碼管理中選擇SVN選擇(SVN、CVS默認插件已經安裝,因此插件在這裏不須要安裝了),只要在Repository URL中輸入SVN的路徑便可,其餘的詳細我這裏不說後面詳細解釋,這裏只給你們解釋簡單的構建一個項目maven

Jenkins新建項目(二)
7.構建maven項目build這是必須設置的,由於這裏不要是對代碼打包、編譯的一個選項

Jenkins新建項目(二)

這樣咱們這裏構建了一個最簡單的CI項目,點擊保存,即完成了項目的新建工做

8.構建時咱們能夠點擊"當即構建"或者首頁的 Jenkins新建項目(二),都可以構建項目,後面我在給你們介紹項目的發佈
 

Jenkins 添加sonar對代碼靜態檢查(三)

(2014-12-03 20:58:27)
 
首先我這裏要簡單的對sonar有個介紹
Sonar是一個用於代碼質量管理的開源平臺,用於管理源代碼的質量,能夠從七個維度檢測代碼質量
經過插件形式,能夠支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十幾種編程語言的代碼質量管理與檢測,看到這裏咱們是否是以爲soanr很強大呢,那麼咱們下來將sonar集成到Jenkins。
sonar的安裝和配置請查看個人另外一個博客http://blog.sina.com.cn/s/blog_b5fe6b270102v7xj.html
以前咱們發佈的容器的時候須要安裝deploy的插件,那麼咱們經過sonar作靜態檢查的時候是否須要安裝其餘的插件呢,這裏必須須要安裝,咱們須要去管理插件中安裝 Sonar Plugin,直接安裝便可,若是在線安裝失敗能夠去官方下載。
soanr的插件安裝完成咱們須要在系統管理
->系統設置 配置下soanr的環境變量,咱們會發如今系統設置中多出了一項sonar的選項。
Jenkins <wbr>添加sonar對代碼靜態檢查(三)

我想這個soanr的配置選項有點特別的簡單,我這裏就不一一說明了,由於我這裏soanr不須要與maven集成、以及個人sonar服務器與數據庫都在同一臺服務器,因此關於後面的選項咱們沒有添加。
下面咱們就能夠再咱們的項目中採用sonar對項目代碼進行靜態檢查,下面咱們進入項目設置中
Jenkins <wbr>添加sonar對代碼靜態檢查(三)

後面沒有標記的選項都是關於maven的,我這裏採用了全局配置,這裏就不配置了,配置完成點擊保存,那麼在執行任務的時候,就能夠採用soanr進行代 碼檢查了,那麼此時咱們已經能夠完成的構建一個CI項目了,後續我會給你們詳細的介紹一下Jenkins的功能,這裏只是給你們作一個快速上手和入門的工 做
 

Jenkins部署Web項目到遠程tomcat(四)

(2014-12-03 19:11:26)
 
以前講到的是如何構建一個項目,而且將代碼進行編譯、打包,那麼打包完成最後的結果就須要發佈到應用服務器,將項目部署成功。在以前的項目中咱們採用的shell腳原本部署,下面講解經過Jenkins部署web項目到遠程tomcat。
首先Jenkins提供了一個發佈的插件deploy plugin,來幫助咱們實現遠程部署,這個插件默認是不安裝的,因此須要咱們本身手動的來安裝。
手動安裝deploy plugin 插件,咱們能夠在線安裝,也能夠經過官方下載相關插件,下載地址: https://updates.jenkins-ci.org/download/plugins,我這裏主要是經過Jenkins在線安裝。
1.系統管理->管理插件->可選插件->搜索「 Deploy to container Plugin」,勾選插件直接安裝,等着Jenkins自動安裝完成。此時咱們打開咱們以前新建的項目選擇「增長構建後的操做」中增長了一項「Deploy war/ear to a container",將咱們的war和ear工程部署到容器。
Jenkins部署Web項目到遠程tomcat(四)

2.咱們添加一個d eploy war/ear to a container選擇,Jenkins中構建後操做多出一個發佈選項
Jenkins部署Web項目到遠程tomcat(四)
WAR/EAR files:是war包的相對路徑
content path:tomcat的發佈路徑,即便用localhost/(content path設置的名字)來訪問項目.

contaners :發佈到的容器,主要可發佈到tomcat、jboss、GlassFish

deploy on failure:發生錯誤的時候是否發佈到tomcat

3.點擊add contaners 添加發布的容器,咱們這裏要發佈到tomcat,因此我這裏添加的是tomcat

Jenkins部署Web項目到遠程tomcat(四)
Jenkins部署Web項目到遠程tomcat(四)

若是你部署的是集羣環境那麼能夠添加多個容器來部署應用。
此時只要咱們運行咱們的任務便可將咱們的應用發佈到tomcat,記住這裏要把應用服務器的防火牆關閉。
這裏在多說一點tomcat默認的登陸是註釋的,咱們須要打開。
在tomcat/conf/tomcat-users.xml下添加如下代碼便可,由於以前的博客講解過tomcat管理權限的配置,這裏就不重複講解。

Jenkins定時構建項目(五)

(2014-12-03 21:33:14)
 
以前咱們說的都是手動的構建一個項目,咱們是否是能夠自動的來構建項目那麼此時咱們須要使用Poll SCM和Build periodically,咱們在構建觸發中選擇這兩項便可,其實他們兩個就是一個自動任務,這裏的語法也是cron的語法,沒有什麼特別
Jenkins定時構建項目(五)
觸發遠程構建:觸發遠程構建
Build after other projects are built:在其餘項目觸發的時候觸發,裏面有分爲三種狀況,也就是其餘項目構建成功、失敗、或者不穩定(這個不穩定我這裏還木有理解)時候觸發項目
Poll SCM:定時檢查源碼變動(根據SCM軟件的版本號),若是有更新就checkout最新code下來,而後執行構建動做。個人配置以下:
*/5 * * * * (每5分鐘檢查一次源碼變化)
Build periodically:週期進行項目構建(它不care源碼是否發生變化),個人配置以下:
0 2 * * * (天天2:00 必須build一次源碼)
那麼是否是有這個就很強大了,不須要咱們手動的點擊構建了,由於我以前在Microsoft的時候咱們的項目都是半夜開始工做,到次日早晨的時候開發查看結果便可。
有朋友就要說啦,那麼咱們是否是須要天天都登陸上去看構建結果呢,這裏我跟你們說,這個不須要,下次我給你們解釋Jenkins的郵件發送功能,但願對你們有幫助
 

jenkins 配置郵件

(2015-03-03 10:55:38)
 
jenkins 自帶一個郵件的通知的功能,可是自帶的郵件通知功能,有點簡單不能自定義信息,因此咱們安裝郵件插件Email-ext plugin。
1.首先在系統管理-插件管理-安裝Email-ext plugin
2.系統設置中配置郵件服務器,在系統設置頁面找到"郵件通知"的設置發送郵件的服務器,我這裏以163郵箱爲例如圖
jenkins <wbr>配置郵件

設置完成之後,咱們點擊Test Configuration,發送測試郵件時候出現失敗,這裏由於咱們首先須要設置一下發送郵件的郵箱帳號,這裏只是配置郵件服務器地址、帳號和密碼,可是jenkins不知道採用哪一個郵箱去發送,在系統設置頁面找到「Jenkins Location」設置「系統管理員郵件地址」,必須與上圖設置的用戶保持一致。
此時咱們已經把能夠發送郵件了,下面咱們來配置要發送的內容
3.系統設置中找到Extended E-mail Notification位置配置發送信息,下圖是我本身配置的,僅供參考
jenkins <wbr>配置郵件


具體的說明我就不解釋了,字面已經說的很清楚了,這樣咱們就配置好郵件通知了
下面咱們根據項目須要來配置發送人,以及觸發條件。
4.在構建後的操做添加「Editable Email Notification」
jenkins <wbr>配置郵件

這樣jenkins的郵件通知就配置完成了。
 
 
 
 

使用Jenkins配置自動化構建

收藏:

持續集成是個簡單重複勞動,人來操做費時費力,使用自動化構建工具完成是最好不過的了。
爲了實現這個要求,我選擇了 Jenkins
從 http://mirrors.jenkins-ci.org/windows/latest下載windows下的最新安裝版jenkins。(若是不 能安裝,從http://mirrors.jenkins-ci.org/war/latest/jenkins.war下載war包,手動配置,配置說 明參見https://wiki.jenkins-ci.org/display/JENKINS/Use+Jenkins)。
1.安裝
這裏直接使用安裝包,安裝過程很簡單,這裏就再說明了。
安裝後 自動建立了一個windows服務:Jenkins,默認使用的端口是8080,若是須要修改,打開安裝目錄下的jenkins.xml文件,修改  <arguments>-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" -- httpPort=8081</arguments>後保存,啓動jenkins服務。
打開http://192.168.0.10:8081/,看到相似下面的界面(我這裏已經建立了一個任務):

說明jenkins已經安裝成功。
2. 建立任務
  2.1 點「新Job」,界面以下:

輸入任務名稱,任意名稱均可以,但最好是有意義的名稱,這裏輸入的名稱和項目名稱相同爲hummer
  2.2 選擇項目類型,因個人項目是maven項目,這裏選擇「 構建一個maven2/3項目」點擊」OK「進入下一個界面。
  2.3 界面以下:

源代碼管理根據本身的須要進行選擇,個人源代碼是使用svn管理的,這裏選擇「Subversion Modules」,在"Repository URL"錄入你的svn倉庫地址;第一次錄入時還須要錄入svn倉庫的用戶名和口令。
剛纔的那個界面比較大,向下滾動,中間部分的界面以下:
構建觸發器,我選擇「 Build whenever a SNAPSHOT dependency is built」,意思是依賴於快照的構建,應該是當svn有修改時就構建項目。
2.4 build設置不用修改,就使用pom.xml,目標選項也不用修改。
2.5 設置構建後的步驟,(Post Steps,可選設置 ),我這裏要求構建成功後把war文件複製到指定的目錄,而後停運tomcat,刪除項目web目錄,啓動tomcat。
2.6 設置郵件通知 
勾選「 E-mail Notification」,在recipients中錄入要接收郵件的郵箱。
點「保存」,完成設置
3. 在工做區域的左邊菜單上點「當即構建」,開始構建項目,

若是構建成功,則項目狀態的S爲藍色,若是失敗則爲紅色。

構建完成,左邊菜單會顯示有「控制檯輸出」,點擊能夠查看控制檯詳細輸出。構建錯誤時也能夠根據相應的錯誤信息進行修改。
相關文章
相關標籤/搜索