jenkins pipeline的操作記錄

2021-10-21 10:57:43 字數 1798 閱讀 5173

1、退出pipeline執行步驟

場景描述:在執行jenkins pipeline我們有時會需要退出執行。比如git專案:clone->build->deploy,我需要獲取觸發job時的**與前一次執行**的增量檔案,但如果觸發時git rev-parse head與前一次執行的commitid號是相同的,那麼檔案無變更的情況下就沒必要繼續執行build和deploy。

node("master")

if(xx=xx)

stage('build')

stage('deploy')

}

這裡需要注意return需要放在stage外面,否則無效會繼續執行build和deploy。

2、判斷檔案是否存在

場景描述:在執行jenkins pipeline時,我們有時會去判斷乙個檔案是否存在,這裡有幾種方式

node('master')/a.log"))

}

node('master')
3、管理伺服器資訊場景描述:pipeline執行中,可能涉及到一些引數的定義和讀取,當這些引數過多的時候,在pipeline上會影響到**的美觀和不便於理解。比如應用部署:伺服器的ip、訪問使用者、部署目錄、啟停指令碼、判活指令碼、資料庫ip、賬號密碼等等資訊。

一種解決方法是將這些資訊統一記錄到乙個檔案中去,每個引數對應一行,然後通過key=value的形式記錄,對於不便於表達的引數做描述說明。pipeline通過解析方法獲取引數值。

資訊記錄檔案如:

#u8環境部署伺服器資訊

xx_u8_ips=127.0.0.1,127.0.0.2

xx_u8_user=test

xx_u8_deploydir=/home/test/

......

解析方法

//解析方法

def parseconfigfile(configcontent){

def configmap = [:]

def configarr = configcontent.split("\n")

for(int i = 0;i4、獲取執行時間

我們有時會需要檢視一下具體步驟的操作時間,用來優化流水線執行步驟。可以通過安裝timestamper外掛程式來實現。以下是未安裝外掛程式和安裝外掛程式之後的比對。

需要注意的是:安裝外掛程式後並不會直接在console output中展示

單一job實現日誌展示,可以在jenkinsfile中包一層timestamps方法。

所有job實現,可以在系統管理》系統配置中選上enabled for all pipeline builds。(無需修改pipeline指令碼)

記記ABAP中控制項的使用和透明表的操作

近日空閒時間學習abap,記學習日誌。今日謂之 記abap中控制項的使用和透明表的操作。首先通過tcode se11建立一透明如下 新增表條目如下 然後在se38裡建立新程式,建立應用工具條上的按鈕和功能按鈕。se51是建立與之對應的程式,點選 格式按建立文字控制項和按鈕控制項 儲存並返回,邏輯自動...

記幾個常見的c檔案操作

近用c語言做檔案操作比較頻繁,記幾個常用的操作 獲得檔案大小 fseek fp,0,seek end int filesize ftell fp rewind fp 讀取指定位置的資料塊 fseek fp,offset,seek set int num read fread buf,1,length...

PLSQL檢視Oracle的sql操作記錄

1 在plsql按鍵ctrl e 可以查詢我們在plsql執行過的歷史sql,包括時間 使用者 語句 2 select from v sql 執行sql查詢,查詢內容包含所有使用者和應用系統對資料庫的操作,執行過的sql 3 select from v process 查詢資料庫的程序 4 v se...