大香蕉综合在线观看视频-日本在线观看免费福利-欧美激情一级欧美精品性-综合激情丁香久久狠狠

好房網(wǎng)

網(wǎng)站首頁 行業(yè)快訊 > 正文

今日更新什么是流水線(Jenkins之流水線介紹)

2022-05-09 02:10:21 行業(yè)快訊 來源:
導(dǎo)讀 目前大家應(yīng)該是對什么是流水線(Jenkins之流水線介紹)比較感興趣的,所以今天好房網(wǎng)小編CC就來為大家整理了一些關(guān)于什么是流水線(Jenkins
目前大家應(yīng)該是對什么是流水線(Jenkins之流水線介紹)比較感興趣的,所以今天好房網(wǎng)小編CC就來為大家整理了一些關(guān)于什么是流水線(Jenkins之流水線介紹)方面的相關(guān)知識來分享給大家,希望大家會喜歡哦。

什么是流水線(Jenkins之流水線介紹)自動化構(gòu)建部署:Jenkins之流水線介紹(筆記)

什么是流水線

現(xiàn)實中的流水線

流水線比較好理解,類比于現(xiàn)實生活中的生產(chǎn)流水線,每個流程只做一件事,通過傳送帶把這些流程連接在一起,一個流程完成后的結(jié)果交由后續(xù)流程繼續(xù)操作。

Jenkins的流水線簡單認(rèn)知

Jenkins的流水線也是這樣工作的,最簡單的認(rèn)知是它可以把若干可通用的Shell腳本像膠水一樣連接起來,雖然這個比喻比較形象,但這只是流水線的冰山一角。

Jenkins流水線的兩種形式

在Jenkins升級x版本之前,流水線只有一種腳本式流水線(Script Pipeline),當(dāng)升級x版本后,新增了聲明式流水線(Declarative Pipeline)

自動化構(gòu)建部署:Jenkins之流水線介紹(筆記)

什么是Jenkinsfile

無論是哪種流水線,都需要為流水線定義流水線腳本,稱之為Jenkinsfile ,使用Groovy語法寫成

腳本式流水線

在說明聲明式流水線前,有必要了解一下腳本式流水線的基本概念,這樣有利于我們知道聲明式流水線的好處與腳本式流水線的限制

特征

在腳本化流水線語法中, 一個或多個 node 塊在整個流水線中執(zhí)行核心工作。

限制

雖然這不是腳本化流水線語法的強(qiáng)制性要求, 但它限制了你的流水線的在node塊內(nèi)的只能做兩件事:

需要通過在Jenkins隊列中添加一個項來調(diào)度塊中包含的步驟。 節(jié)點上的執(zhí)行器一空閑, 該步驟就會運行。

創(chuàng)建一個工作區(qū)(特定為特定流水間建立的目錄),其中工作可以在從源代碼控制檢出的文件上完成。

基本語法

Jenkinsfile (Scripted Pipeline)

node{//需要有一個或多個node節(jié)點表示一系列操作stage('Build'){//每個stage表示一個步驟//Build步驟內(nèi)容}stage('Test'){//Test步驟內(nèi)容}stage('Deploy'){//Deploy步驟內(nèi)容}}

聲明式流水線的基本語法類似于腳本式流水線,但是其功能更加強(qiáng)大

聲明式流水線基礎(chǔ)特征

聲明式流水線最外層Jenkinsfile腳本節(jié)點是pipeline

與腳本式流水線不同點

聲明式和腳本化的流水線從根本上是不同的。 聲明式流水線的是 Jenkins 流水線更近的特性:

相比腳本化的流水線語法,它提供更豐富的語法特性,

是為了使編寫和讀取流水線代碼更容易而設(shè)計的。

基礎(chǔ)語法

Jenkinsfile (Declarative Pipeline)

pipeline{//pipeline是聲明式流水線的一種特定語法,在塊內(nèi)定義了整個流水線的所有內(nèi)容agentany//agent是聲明式流水線的一種特定語法,它指示Jenkins為整個流水線分配一個執(zhí)行器(在節(jié)點上)和工作區(qū),等效于腳本式流水線node塊stages{//所有流程(狀態(tài))的外層塊,僅有一個stage('Build'){//每個stage為一流程,與腳本式基本一致,每個stage可以定義名稱steps{//步驟塊,內(nèi)部包含具體操作sh'make'//sh操作,其引號間的文字會當(dāng)成shell直接執(zhí)行}}stage('Test'){steps{sh'makecheck'junit'reports/**/*.xml'//junit使用匹配的定義測試xml進(jìn)行單元測試}}stage('Deploy'){steps{sh'makepublish'}}}}

使用jenkins的Blue Ocean插件運行構(gòu)建:

Jenkinsfiles文件:

自動化構(gòu)建部署:Jenkins之流水線介紹(筆記)


版權(quán)說明: 本文由用戶上傳,如有侵權(quán)請聯(lián)系刪除!


標(biāo)簽: