jenkins是CI/CD中部署時(shí)候一個(gè)重要工具,可以按照我們需求進(jìn)行配置一些編譯打包測(cè)試工作,有些是全自動(dòng)化的,有些需要進(jìn)行手動(dòng)參數(shù)進(jìn)行觸發(fā)。今天給大家分享一下Jenkins使用Build With Parameters插件,實(shí)現(xiàn)外置參數(shù)進(jìn)行觸發(fā)job。
歡迎關(guān)注微信公眾號(hào):羽林君,或者添加作者個(gè)人微信:become_me
安裝插件
Jenkins插件管理搜索Build With Parameters
安裝好之后http://192.168.33.128:8080/restart ,重啟等待生效
重啟后進(jìn)入job配置
使用Build With Parameters插件
在基本參數(shù)配置中使能參數(shù)選項(xiàng):
可以看到有很多選項(xiàng),
- 布爾參數(shù)選擇參數(shù)憑據(jù)參數(shù)文件參數(shù)多行字符串參數(shù)密碼參數(shù)運(yùn)行參數(shù)字符串參數(shù)
使用字符串參數(shù)
做一個(gè)簡(jiǎn)單的tag打包發(fā)布
tag外置參數(shù)輸入設(shè)置
設(shè)置字符串參數(shù)名稱,GIT_TAG_VERSION
,其中參數(shù)要使用下劃線,這樣Jenkins可以進(jìn)行后續(xù)的識(shí)別使用。
在這里插入圖片描述
利用git publisher進(jìn)行tag發(fā)布
git publisher也是Jenkins的插件,可以用來(lái)把修改的部分推送到遠(yuǎn)程倉(cāng)庫(kù),這里可以用來(lái)推送tag下面是git publisher的選項(xiàng)
1.Push Only If Build Succeeds:構(gòu)建成功時(shí)推送,這個(gè)必須得勾選
2 .Merge Results:合并結(jié)果,不做詳細(xì)介紹
3.Force Push:強(qiáng)制推送到遠(yuǎn)程倉(cāng)庫(kù)上
4.Tags:標(biāo)簽,打tag重點(diǎn)在這:
Tag to push:定義tag的名稱,這邊使用Jenkins提供$BUILD_NUMBER變量,根據(jù)當(dāng)前job構(gòu)建號(hào) 來(lái)進(jìn)行打TAG
Tag message:定義tag的描述
Create new tag:創(chuàng)建新的TAG,勾選
Update new tag:更新TAG,勾選
Target remote name:打TAG到遠(yuǎn)程上的名稱
5.Branches:分支,不做詳細(xì)介紹
6.Notes:記錄,不做詳細(xì)介紹
使用${}
進(jìn)行參數(shù)取數(shù)據(jù)
設(shè)置好之后觸發(fā)編譯,會(huì)有param選擇,這個(gè)時(shí)候我們就可以輸入我們需要的參數(shù)進(jìn)入這是觸發(fā)之后的執(zhí)行l(wèi)og數(shù)據(jù)
push失敗,是因?yàn)閷?xiě)的code是隨機(jī)寫(xiě)的,寫(xiě)正確就推送上去了
除了使用git publisher插件,我們也可以編譯時(shí)候執(zhí)行:
git?tag?-d?%GIT_TAG_VERSION%
git?tag?-d?${GIT_TAG_VERSION}
不同平臺(tái)下,變量的引用不一樣,
Windows批處理:%var_name%
Unix/Linux Shell: ${var_name}
設(shè)置多選擇列表進(jìn)行觸發(fā)編譯
上面使用了單字符串進(jìn)行驗(yàn)證,接下來(lái)使用選項(xiàng)列表的選擇觸發(fā)job試用做一個(gè)多倉(cāng)庫(kù)選擇的工作,定義名稱為GIT_STORE
這里使用換行分開(kāi),這樣就可以出現(xiàn)選項(xiàng)在代碼來(lái)源,設(shè)置選擇參數(shù)進(jìn)行倉(cāng)庫(kù)下拉代碼:
在外部進(jìn)行觸發(fā)編譯,這個(gè)時(shí)候就可以進(jìn)行選擇了
這是觸發(fā)之后的執(zhí)行l(wèi)og數(shù)據(jù)
附錄
此外還可以使用Active Choices這個(gè)插件,進(jìn)行腳本解析功能,達(dá)到更復(fù)雜的功能
還是老方法下載安裝:
同樣的restart操作等待生效:
這個(gè)時(shí)候進(jìn)行增加參數(shù)我們就發(fā)現(xiàn)多了幾個(gè)選項(xiàng):選擇好參數(shù):
選擇使用腳本解析的方法:
選擇腳本解析
return?['Option?1',?'Option?2',?'Option?3']
下面的選項(xiàng)可以單選和可以多選,這里功能就復(fù)雜起來(lái)了點(diǎn)擊
Build with Parameters
進(jìn)行觸發(fā)編譯,就可以看到選項(xiàng)三個(gè)全選,觸發(fā)編譯
Active Choices還有更豐富的界面選擇詳情參考:https://plugins.jenkins.io/uno-choice/
結(jié)語(yǔ)
這就是我在Jenkins實(shí)現(xiàn)選擇參數(shù)構(gòu)建的使用分享。如果大家有更好的想法,也歡迎大家加我好友交流分享哈。
作者:良知猶存,白天努力工作,晚上原創(chuàng)公號(hào)號(hào)主。公眾號(hào)內(nèi)容除了技術(shù)還有些人生感悟,一個(gè)認(rèn)真輸出內(nèi)容的職場(chǎng)老司機(jī),也是一個(gè)技術(shù)之外豐富生活的人,攝影、音樂(lè) and 籃球。關(guān)注我,與我一起同行。