1. 程式人生 > >Jenkins pipeline自動化構建審批功能

Jenkins pipeline自動化構建審批功能

docker 思路 執行 目的 支持 擴展 dsl ges 提醒

Jenkins Pipeline是一套插件,支持將連續輸送Pipeline實施和整合到Jenkins。Pipeline提供了一組可擴展的工具,用於通過PipelineDSL為代碼創建簡單到復雜的傳送Pipeline。 對於單個項目來說,使用這樣的Pipeline來構建能夠滿足絕大部分需求,但是這樣做也有很多缺陷,包括:

多個項目的Pipeline打包腳本不能公用,導致一個項目寫一份腳本,維護比較麻煩。
Jenkins提供了一個更優雅的管理Pipeline腳本的方式,在配置項目Pipeline的時候,選擇Pipeline script from SCM。
這樣,Jenkins在啟動job的時候,首先會去倉庫裏面拉取腳本,然後再運行這個腳本。在腳本裏面,我們規定的構建方式和流程,就會按部就班地執行。

接下來我們來實踐下。

        環境:Docker
        容器管理平臺:Rancher
        語言:Java

**  Jenkins安裝**
                略

**Pipeline插件安裝**
            流水線插件
            系統管理--->管理插件--->可選插件--->搜索pipeline--->點擊直接安裝

技術分享圖片

  **extended choice parameter插件安裝**:
    參數化構建過程,構建的時候可以多選框來選擇要構建的項目模塊
    系統管理--->管理插件--->可選插件--->搜索extended choice parameter---->點擊直接安裝

技術分享圖片

    新建一個pipeline的job
    點擊參數構建化

技術分享圖片

    新建分支版本參數

技術分享圖片

    新建項目名稱參數

技術分享圖片

    新建rancher id環境變量

技術分享圖片

  新建rancher應用分類

技術分享圖片

流水線配置   

技術分享圖片
Repositories Jenkinsfile腳本所在分支
Branches to build是Jenkinsfile所在分支

腳本
技術分享圖片

技術分享圖片

增加一個審批功能,需要執行人點擊確認才能繼續構建,我這邊只是簡單的增加提醒功能,更多的功能自行到網速查閱。
技術分享圖片
技術分享圖片
技術分享圖片
這邊只要修改每個job的參數上面的某些變量即可,無需更改構建腳本,不管幾個Job,都可共同一個腳本。
我這邊只是舉一個簡單的例子,大家實際應用中,需要轉變思路。


更深入的學習,請進入視頻學習。

企業級Docker+Jenkins+Gitlab自動化構建實踐

http://edu.51cto.com/course/14600.html
技術分享圖片

Jenkins pipeline自動化構建審批功能