post操作:
- 在stages後面加入的post,就是在stages後執行,並有分條件
- always,success,failure才執行
試著commit後:
執行Job看到:
stage內的when條件:
這邊使用到jenkins本身帶有的環境變數名稱
可以查看Jenkins網站位置/env-vars.hrml
一樣commit到git的jenkins-jobs的branch後執行Job:
後來才發現:
所以這邊嘗試改用environment一般變數,自己宣告的:
可以注意到我用到參變數的$字號時都是要用雙引號喔!
commit後執行Job看到:
進階點的environment還可以引用credentials:
在使用前要先確認有引入相關plugin,否則無法使用其調用的函式
點進去可以連結看到:
現在隨意建立一個credential:
透過上述的id改寫pipeline:
可以注意到我用到參變數的$字號時都是要用雙引號喔!
一樣commit後執行得到:
Tool引入pipeline中:
其中要引用到pipeline使用的工具,要找到其對應的名稱:
例如我在pipeline中要使用Maven工具
上面這個名稱要放到pipeline中,像下面這樣:
這邊就嘗試打包看看:
在pipeline中使用Parameters:
宣告方式如下
使用choice還沒執行前會看不到輸入參數:
先執行一次才會看到:
確定上面的語法是可以正常執行的!
可以注意到我用到參變數的$字號時都是要用雙引號喔!
這邊也可以直接寫這樣:
並且也能透過參數來sh執行不同的groovy script如下介紹
使用groovy script:
首先撰寫groovy的script放到git上:
改寫pipeline:
都commit後執行Job:
都來自:
pipeline小技巧 — replay:
隨意點擊一個pipeline執行歷程:
這樣修改可以很方便地進行測試pipeline流程!
但是記得不會異動到git上的Jenkinsfile & script.groovy檔案內容
供使用者(中途或開始)時輸入參數:
再延續使用上面的script.groovy內容情況下,我想在deploy安插給使用者輸入
僅在deploy階段加入使用者要自行填入的參數:
執行後會發現流程卡在這,並等待使用者填入參數:
隨便選個:
稍微重新整理才會看到:
並且進階版也可以多個項目選擇:
執行後後面會看到:
在Console Output看到:
但是記得這個input只有在deploy的stage區塊內
也就是該選擇的參數也只能使用在這個區塊內