1. 程式人生 > >持續集成平臺jenkins

持續集成平臺jenkins

由於 管理 當前 獲取 rda 權限管理 標識 erl ger

一. 什麽是持續集成

1. 概念

持續集成(Continuous Integration),也就是我們經常說的CI

持續集成(CI)是一種實踐,可以讓團隊在持續的基礎上收到反饋並進行改進,不必等到開發周期後期才尋找和修復缺陷

2. 為什麽要使用持續集成

  • bug總是在最後才發現

  • 越到項目後期,問題越難解決

  • 軟件交付時機無法保障

  • 程序經常需要變更

  • 無效的等待變多

3. 多人開發流程圖

多人協作開發,由於開發只會測試自己的代碼,多人的代碼集成在一起,難免會出現這樣那樣的bug。這時就需要jenkins對集成後的代碼進行打包編譯,如果有問題會進行反饋

持續集成並不是要等到項目穩定,而是在項目一開始就要進行,這樣才能盡早發現問題,解決問題

技術分享圖片

二. 持續集成的用途(標紅色的都是)

技術分享圖片

技術分享圖片

三. 持續集成的好處

1. 解放了重復性勞動

2. 更快地修復問題

3. 更快地交付成果

4. 減少了手工的錯誤

人和機器的一個最大的區別是,在重復性勞動上,人容易犯錯,而機器犯錯的幾率幾乎為零。所以,當我們搭建完成集成服務器後,以後的事就交給集成服務器來打理吧

5. 減少了等待時間

持續集成縮短了從開發、集成、測試、部署各個環節的時間,從而也就縮短了中間可以出現的等待時間

持續集成,意味著開發、集成、測試、部署也得以持續

6. 更高的產品質量

集成服務器往往提供 Code review、代碼質量檢測等功能

對代碼不規範或者有錯誤的地方會進行標識,也可以設置郵件、短信等進行警告

而開發人員通過 Code review 也可以持續提高編程的能力

四. jenkins 介紹

一款持續集成工具

1. 環境安裝:

1). jdk 1.8

2). jenkins下載地址: https://jenkins.io/download/ 下載 Long-term Support(LTS) 下的版本

2. jenkins 概念

1). Job

在jenkins平臺中,都是以Job(任務/工程)為單位去完成一件事情的

技術分享圖片

2). plugin(插件)

jenkins提供平臺,集成各種插件來完成一個Job。想用jenkins平臺來做什麽,先找找有沒有相應的插件。比如:windows命令、linux命令的支持、svn和git代碼獲取、郵件發送等

路徑:系統管理 -> 管理插件 -> 可選插件

技術分享圖片

技術分享圖片

3). workspace(工作空間)

jenkins是通過文件形式來存儲和管理數據的

workspace即給jenkins指定一個專門的目錄來存儲其所有的配置和數據

jenkins的workspace是根目錄。每個Job都有屬於自己的workspace(任務之間互不相幹)

路徑:系統管理 -> 系統設置

技術分享圖片

4). jenkins管理(Jenkins Manager)

整個jenkins的全局配置,包括權限管理、插件管理、節點管理等

技術分享圖片

3. jenkins Job詳解

技術分享圖片

技術分享圖片

1). 基本信息配置(General)

Job名字、指定當前Job的工作空間、指定當前Job綁定到哪個執行機上執行等

技術分享圖片

2). 源碼管理(Source Code Management)

svn/git等,需要相應的插件支撐

配置好源碼管理後,在執行Job時會自動從相應的源碼庫裏下載代碼到當前Job的工作空間中

技術分享圖片

3). 構建觸發器(Build Triggers)

觸發器:執行當前任務的條件

常用定時構建:類似windows/linux的定時任務。指定當前Job執行的時間

技術分享圖片

技術分享圖片

定時構建1:要求每天9點,14點,20點運行這個任務(其中*代表所有的有效值)

技術分享圖片

註意:如果0-0用H代替,會出現不整點的情況

技術分享圖片

定時構建2:要求每天9點到14點之間,每整點運行這個任務(其中*代表所有的有效值)

技術分享圖片

定時構建3:要求周一到周六每天9點到14點之間,每整點運行這個任務(其中*代表所有的有效值)

技術分享圖片

Poll SCM

技術分享圖片

4). 構建環境(Build Environment)

技術分享圖片

5). 構建(Build)

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

6). 構建後操作(Post-build Actions)

詳細配置郵件請參考 jenkins自動發送郵件配置

技術分享圖片

持續集成平臺jenkins