Jenkins的使用(一)


Jenkins 介紹:

  Jenkins是一個獨立的開源軟件項目,是基於Java開發的一種持續集成工具,用於監控持續重復的工作,旨在提供一個開放易用的軟件平台,使軟件的持續集成

變成可能。前身是Hudson是一個可擴展的持續集成引擎。可用於自動化各種任務,如構建,測試和部署軟件。Jenkins可以通過本機系統包Docker安裝,甚至可

以通過安裝Java Runtime Environment的任何機器獨立運行。

主要用於:

  1. 持續、自動地構建/測試軟件項目,如CruiseControl與DamageControl。
  2. 監控一些定時執行的任務。

Jenkins特點:

  • 開源免費;
  • 跨平台,支持所有的平台;
  • master/slave支持分布式的build;
  • web形式的可視化的管理頁面;
  • 安裝配置簡單;
  • tips及時快速的幫助;
  • 具有很多個插件

通常項目的發布需要執行下面的步驟,其中紅色框中的部分都可以使用Jenkins來完成.

一、安裝Jenkins以及創建

官網:https://jenkins.io/ 官方文檔:https://jenkins.io/zh/doc/

下載地址:https://jenkins.io/zh/download/

根據自己的系統選中正確的版本進行安裝.具體的步驟就省略了,都是根據提示下一步下一步.網上也很多介紹.

 

安裝完成之后點擊左邊菜單欄 新建Item

 

選擇輸入任務名稱並選擇第一種Freestyle project,

 

 

 

二、General

1.描述

 

2.策略,每次觸發構建都存有相應的記錄在這里可以設置記錄保存幾天,保存記錄的個數,避免記錄過多占用不必要的空間.

 

3.Github項目的話可直接填寫Github項目的地址

 

4.這次構建時鎖定的資源

 

 

 

 5.參數化構建(可選構建是傳遞的參數,根據參數動態構建,后面會仔細的介紹)

 

 

 6.截流構建,規定時間內限制構建次數.

 

7.關閉構建,特殊情況下想關閉這個job,避免發生錯誤構建時可勾上.

 

 

 

 8.並發構建,選中此選項后,可以並行執行此項目的多個構建。默認情況下,一次只執行一個項目的構建——開始構建該項目的任何其他請求都將保留在構建隊列中,直到第一個構建完成。

這是一個安全的默認設置,因為項目常常需要對某些資源(如數據庫或硬件)進行獨占訪問。但是啟用這個選項后,如果有足夠的構建執行者可用來處理這個項目,那么這個項目
的多個構建將並行進行。如果在任何時候都沒有足夠的執行器可用,那么任何進一步的構建請求都將正常地保存在構建隊列中。
啟用並發構建對於執行冗長測試套件的項目非常有用,因為它允許每個構建包含更少的更改,而總周轉時間會減少,因為后續構建不需要等待以前的測試運行完成。
該特性對於參數化的項目也很有用,這些項目的單個構建執行(取決於使用的參數)可以完全獨立於其他項目。
每個並發執行的構建都發生在其自己的構建工作區中,與任何其他構建隔離。默認情況下,Jenkins將“@”附加到工作空間目錄名,例如。“@2”。
分隔符“@”可以通過設置hudson.slaves來更改。在啟動Jenkins時,WorkspaceList Java系統屬性。例如,“hudson.slaves。將分隔符改為連字符。
有關設置系統屬性的更多信息,請參見wiki頁面。
但是,如果您啟用了Use custom workspace選項,那么所有構建都將在同一個工作區中執行。因此需要謹慎,因為多個構建可能會同時改變同一個目錄。

 

 

 

三、源碼管理

源碼管理有三種選擇,第一種就不必說了,主要說第二種(Git)和第三種(SVN)

源碼管理為Git

 

 Repository URL :   輸入Git的項目地址

 Credentials    :   點擊添加,添加Git的賬號密碼,保存之后選擇剛添加的賬號密碼

 其他配置根據自己實際情況選擇,一般默認即可.

 
源碼管理為Subversion時

Repository URL :   輸入svn的項目地址

Credentials    :   點擊添加,添加svn的賬號密碼,保存之后選擇剛添加的賬號密碼

 其他配置根據自己實際情況選擇,一般默認即可.

 
賬號密碼的添加
 

 

 

 

 

 

 

四、構建觸發器

這里只列舉常用的幾種構建觸發器.

1.觸發遠程構建 (例如,使用腳本)

 

 

在身份驗證令牌中填寫驗證的token,例如123456
則觸發構建項目的url為  JENKINS_URL/job/job名稱/build?token=123456 或者 /buildWithParameters?token=123456
若項目使用的是svn,則可以設置svn的hook訪問該地址,項目就可以觸發構建
1.在svn的Repositories中選擇要觸發構建的項目,鼠標右鍵點擊--->所有任務--->Manage Hooks(管理hooks)

 

 

2.選擇Post-commit hook(提交完成之后的hook),然后點擊Edit

 

 

3.在文本框中該填寫
start iexplore.exe    JENKINS_URL/job/job名稱/build?token=123456
ping /n 4 127.1 >nul 2>nul
taskkill /f /im iexplore.exe
代碼的意思就是用系統自帶的瀏覽器訪問jenkins中job的觸發構建項目的url.然后等待2秒鍾,然后關閉瀏覽器.
這里注意這種是在沒有相關權限的情況下(任何人都可以訪問,沒有做限制)可以這樣做.若是需要相關權限可通過shell(注意:windows自帶的shell不可以)賬號密碼登錄然后訪問url觸發構建.

 

 若觸發報錯  Error 403 No valid crumb was included in the request, 則需關掉Jenkins配置中的跨站請求偽造保護.

 

 

 

 
2.Gitee webhook 觸發構建
1.紅色1指向的地址是要填寫在Git上的postUrl,點擊Gitee WebHook 密碼的生成按鈕(紅色2)文本框生成一個字符串(紅色3)

 

 

 
2.我以Gitee為例,找到項目主頁的右上角的 管理 按鈕並點擊.

 

 

進去之后點擊菜單欄的WebHooks,再點擊右上角的添加

 

 

在URL中填寫jenkins項目的地址(第一步中的紅色1)以及生成的密碼(第一部中的紅色3),到此配置完成.

 

 

 
3.Poll SCM  輪詢觸發構建
這個就可以根據jenkins的右邊的查看提示來進行填寫,例如
# 每15分鍾觸發一次
H/15 * * * *
# 在每個小時的前0-29分鍾,每隔10分鍾觸發一次
H(0-29)/10 * * * *
# 星期一至星期五的9點至16點,每兩小時為一個時間段,45分時觸發一次 45 9-16/2 * * 1-5 # 星期一至星期五的9點至16點,每兩小時觸發一次 H H(9-16)/2 * * 1-5 # 除了12月,每個月的1號和15號一天一次 H H 1,15 1-11 *

五、構建環境

 
          

默認的有這幾種

 
          

 

 

 

 

 

 

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM