3種創建Jenkins流水線的方法 - Classic UI, BlueOcean, Git

Jenkins是一個DevOps工具,可以用來自動構建、測試和交付軟件代碼。如果你是Jenkins的新手,本教程將幫助你理解如何使用以下方法之一創建Jenkins流水線(Pipeline):

  • 經典的Jenkins用戶界面
  • Jenkins Blue Ocean用戶界面,減少雜波並增加清晰度
  • Git倉庫Jenkinsfile管道腳本

方法1:從經典的Jenkins UI創建流水線

打開Jenkins菜單,點擊Create New Item。輸入流水線的名稱:Test-Pipeline。從選項列表中選擇Pipeline。單擊Ok,如下所示。


一旦創建了測試流水線,就編輯流水線。單擊Pipeline選項卡,並粘貼以下代碼。這個示例代碼有三個簡單的階段,每個階段中定義了步驟。對於這個簡單的示例,steps部分只有echo命令,它將輸出一條消息。

pipeline {
  agent any
  stages {
    stage('Stage 1: Integrate Web and DB') {
      steps {
          echo '1.1 Getting application web files'
          echo '1.2 Getting database files'
          echo '1.3 Combining web and db files'
      }
    }
    stage('Stage 2: Integration testing') {
      steps {
          echo '2.1 Performing integration testing'
      }
    }
    stage('Stage 3: Release to Prod') {
      steps {
          echo '3.1 Releasing code to production'
      }
    }
  }
}

當管道被選中時,點擊側菜單欄中的Build Now,將執行如下所示的流水線。

流水線執行之後,您可以從側面菜單欄上的Console output菜單項查看日誌,如下所示。

方法2:從Blue Ocean接口創建流水線

Blue Ocean爲Jenkins提供了更好的用戶體驗。這個UI是爲Jenkins管道從頭設計的,減少了混亂,增加了UI的清晰度。

首先,搜索blue ocean,並從插件管理器安裝blue ocean插件。安裝插件後,重新啓動Jenkins。

在Jenkins服務器上,爲blue ocean安裝一個本地git倉庫,以便在流水線中使用。

sudo yum install git -y

cd /var/lib/jenkins
mkdir localgit
cd localgit
git clone https://my-git-repor-url/v1/repos/BinCode

注意:我給出的git倉庫路徑爲/var/lib/jenkins/localgit/BinCode

安裝完插件後,你會在側邊欄上看到一個名爲Open Blue Ocean的菜單項,如下圖所示:

您還可以通過將/blue附加到jenkins URL直接訪問blue ocean UI。例如:http://192.168.101.100:8080/blue

第一次,Blue Ocean將在本地git存儲庫中查找Jenkinsfile,併爲每個包含Jenkins文件的分支運行一個管道。

由於我們還沒有創建Jenkinsfile,它將顯示一個從用戶界面創建新管道的提示。管道創建UI將引導您完成創建新管道的步驟。首先,單擊start旁邊的+。點擊Add a Step,選擇Print Message,如下圖所示。

輸入消息後,單擊後退箭頭返回。先不要點擊Save。

添加另一個步驟-Print Message - 1.2Getting database files-單擊後退箭頭返回。

重複上面的第3個echo步驟,如下所示。


在創建所有三個階段之後,單擊Save按鈕保存流水線。您可以將更改提交給主服務器,或者創建一個新的分支。對於本例,選擇Commit to new branch,並給出名稱爲jenkins,如下所示。

一旦管道被創建並執行,它將顯示每個階段的狀態。單擊特定的stage名,查看對應的stage輸出,如下所示。

在Jenkins服務器上,您可以看到現在已經爲您的存儲庫創建了一個名爲Jenkins的新分支

# git branch -a
  jenkins
* master
  remotes/origin/HEAD -> origin/master
  remotes/origin/master

方法3:使用Git倉庫的Jenkinsfile流水線腳本創建

首先,在存儲庫中創建Jenkinsfile,如下所示。在本例中,我使用的是分支中已經存在的Jenkinsfile。如果您沒有這個文件,請創建一個。

# cd /var/lib/jenkins/localgit/BinCode

# git checkout jenkins
Switched to branch 'jenkins'

# git branch -a
* jenkins
  master
  remotes/origin/HEAD -> origin/master
  remotes/origin/master

# cat Jenkinsfile
pipeline {
  agent any
  stages {
    stage('Stage 1: Integrate Web and DB') {
      steps {
        echo '1.1 Getting application web files'
        echo '1.2 Getting database files'
        echo '1.3 Combining web and db files'
      }
    }
    stage('Stage 2: Integration testing') {
      steps {
        echo '2.1 Performing integration testing'
      }
    }
    stage('Stage 3: Release to Prod') {
      steps {
        echo '3.1 Releasing code to production'
      }
    }
  }
}

首先,按照方法1中解釋的類似步驟,從經典UI中創建一個新流水線,並將該流水線命名爲:SCM-Test-Pipeline。接下來,選擇SCM- test -Pipeline並在Pipeline選項卡下,定義選擇的Pipeline script from SCM選項,如下所示。確保腳本路徑顯示Jenkinsfile,如下所示。

現在,這還將詢問您的SCM倉庫的詳細信息。在這裏輸入您的git倉庫詳細信息。如果您的jenkins文件位於特定的分支中,請確保指定分支名稱正確。

指定git倉庫細節之後,執行流水線。流水線執行後,從側菜單欄單擊控制檯輸出查看流水線的執行日誌輸出。

推薦

Kubernetes入門培訓(內含PPT)

雲時代的運維正是不折不扣的架構師

本文分享自微信公衆號 - 雲原生技術愛好者社區(programmer_java)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章