Jenkins中pipeline風格構建項目,從gitee中拉取代碼自動執行接口測試


Jenkins 2.0開始推行Pipeline as Code,實現從CI到CD的轉變。 Pipeline實際上是一套Groovy DSL,用Groovy腳本描述CI/CD的流程,Jenkins可以從代碼庫中獲取腳本,實現了Pipeline as Code。Pipeline將原來獨立運行的多個任務連接起來,可以實現更加復雜的CI/CD流程。

為什么要使用Pipeline?對於實踐微服務的團隊,產品有很多服務組成,傳統的在Jenkins中集中進行job配置的方式會成為瓶頸,微服務團隊會將CI Job的配置和服務的發布交給具體負責某個服務的團隊,這正需要Pipeline as Code; 除此之外,一次產品的發布會涉及到多個服務的協同發布,用單個CI Job實現起來會十分困難,使用Pipeline可以很好的完成這個需求。

一、Pipeline的基本概念和Jenkinsfile

  • Node:一個Node就是一個Jenkins節點,可以是Master,也可以是Slave,是Pipeline中具體Step的運行環境。
  • Stage:一個Pipeline有多個Stage組成,每個Stage包含一組Step。注意一個Stage可以跨多個Node執行,即Stage實際上是Step的邏輯分組。
  • Step:是最基本的運行單元,可以是創建一個目錄、從代碼庫中checkout代碼、執行一個shell命令、構建Docker鏡像、將服務發布到Kubernetes集群中。Step由Jenkins和Jenkins各種插件提供。

二、使用Jenkins中pipeline風格構建項目,共gitee中拉取代碼自動執行測試

1.gitee中需要創建倉庫上傳代碼

2.配置Jenkins

b.選擇項目名稱、項目風格

c.新增憑據(只需要新增一次即可,第二次如果還是從相同倉庫拉去不需要在新增憑據)

注意:

  新增憑據這里就是為了和gitee建立連接

 彈窗內容,注意這里需要使用ssh連接,需要一對密鑰,公鑰保存在gitee中,私鑰在下面添加

 d.設置執行代碼

代碼如下:

node{
    stage 'checkout'
    git([url:'https://gitee.com/haugus/automated-testing-keyword-driven.git',branch:"master"])
    
    stage 'run'
    sh 'python run.py'
}

注意:

由於上述配置的是ssh方式連接,所有項目在gitee中的地址,必須寫出ssh地址,類似:git@gitee.com:haugus/automated-testing-keyword-driven.git

e.注意

在構建之前,由於我這里是拉去的代碼是接口自動化測試的代碼,所以Jenkins服務器要能執行必須要有python3的環境,以及相應的庫

點擊這里查看centos中升級python環境

pip install requests
pip install openpyxl
pip install ddt

f.點擊 Build Now 構建執行項目

g.查看結果


免責聲明!

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



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