Jenkins憑證及任務演示-pipeline(二)--技術流ken
Jenkins前言
在上一篇部落格《 ofollow,noindex" target="_blank">Jenkins持續整合介紹及外掛安裝版本更新演示(一)--技術流ken 》中已經詳細介紹了jenkins的外掛安裝以版本更新等,本篇部落格將再深入探究jenkins的更多功能,以便能夠熟練使用jenkins完成工作中的內容。
本篇部落格將詳細講解有關jenkins的憑證以及新建任務的演示,有關jenkins系列會一直更新到jenkins與gitlab和ansible完成動態和靜態網站持續整合自動化部署為止,敬請期待。
Jenkins憑證介紹
有許多第三方網站和應用程式可以與 Jenkins 進行互動,例如程式程式碼倉庫,雲端儲存系統和服務等。
此類應用程式的系統管理員可以在應用程式中配置憑證以專供 Jenkins 使用。通常通過將訪問控制應用於這些憑證來完成這項工作,以“鎖定”Jenkins可用的應用程式功能區域。一旦 Jenkins 管理員(即管理 Jenkins 站點的 Jenkins 使用者)在 Jenkins 中新增/配置這些憑證,Pipeline 專案就可以使用憑證與這些第三方應用程式進行互動。
Jenkins 中儲存的憑證可以用於:
- 任何適用於 Jenkins 的任何地方(即全域性證書)
- 特定的 Pipeline 專案
- 特定的 Jenkins 使用者
Jenkins憑證的建立
第一步:建立憑證
進入你的jenkins的首頁,點選左邊欄的憑證
第二步:點選全域性憑據
第三步:點選 新增一些憑據
第四步:輸入資訊
在如下的對話方塊中輸入你的資訊點選確定即可
第五步:首頁檢視
即可看到我們已經新增的憑據
新建任務演示
如果你想使用jenkins完成日常的工作,那麼你必須要學會如何使用任務。
所謂的任務你可以這樣理解就是你需要執行的一系列動作。
第一步:點選新建任務
第二步:輸入你要建立的任務名稱
輸入完成點選下方的確定即可
注意:名稱不能有空格
這個名稱就是一個目錄,接下來我們會演示git,git拉取到的內容就是儲存了這個同名目錄下面
第三步:填寫你需要看到的資訊
在引數構建過程中引數有幾個你必須知道的是文字引數和選項引數
這裡我選擇選項引數進行演示
第四步:git獲取專案
URL輸入你的專案地址
憑證哪裡新增可以獲取到你的專案的使用者和使用者名稱
branch哪裡新增分支
第五步:構建
這裡就是把 你的命令新增在這裡即可
在shell中新增如下內容並儲存即可
第六步:構建引數
如果你選擇了選項引數,在這個任務介面就可以看到這個選項
點開這個,就會看到我們剛才輸入的tyep以及auto了(忘記了請往上翻一下哦)
第七步:返回結果
如果執行成功了左下角的圓圈就是藍色的
執行失敗了就是紅色
滑鼠放上去也會看到提示資訊的
第八步:檢視執行過程
下圖中的紅色框都是我剛才執行的命令
第一列:的/var/lib/jenkins/workspace/test_for_block 是echo 的結果,表示jenkins現在工作目錄是在你的任務名稱下的
第二列:顯示當前所在的目錄,其實可以發現我們現在就處在自己的新建任務的同名目錄中
第三列:進入到工作目錄,即當下
第四列:給我們展示了當前目錄下的所有檔案,可以看到我們遠端倉庫中的檔案已經被拉取到了當前資料夾下
pipeline結構介紹
層級結構
第一層:pipline,這是最外層
第二層:stages,這層是用來完成一個特定的工作,其中有一個或者多個子層,每個子層是一個stage
第三冊:stage,這是stages的子層
第四層:steps,這層是定義具體要執行的操作
pipline { agent any; environment { user='deploy' host='1.2.3.4' PATH='/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin' } stages { stage('bulid job') { environment { NEWPATH='/bin:/sbin' } steps { sh '/home/a.sh' echo "hi boys" script{ xxxx xxxx } } } } }
區域:
1. agent:定義當前的job執行在哪個jenkins節點上
any:
none:
node:
agent {node {label 'ser1'}}
agent any
2. environment:定義環境變數
格式:變數名=變數值
3. script:可選的
4. steps:藉助於特定的jenkis模組來完成特定的工作
echo
sh
git
pipeline演示
第一步:新建任務
選擇流水線
第二步: 編寫pipeline
可以發現這裡面的介面比我們之前選擇的freestyle介面簡潔的多
在這裡填寫你的pipeline儲存即可
第三步:構建
點選立即構建即可
第四步:檢視執行結果
可以發現執行成功
pipeline的功能很多,在接下來的部落格當中會使用pipeline完成動態網站的持續整合部署。
上面例子中的pipeline程式碼
pipeline{ agent {node {label 'master'}} environment { PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin" } parameters{ choice( name: "deploy_env", choices: "dev\nprod", description: "this is for liang lei xi tong" ) string(name: 'version',defaultValue: '1.0.0', description: '版本號') } stages { stage("test for pipline job"){ steps{ sh "git config --global http.sslVerify false" dir("${env.WORKSPACE}"){ git branch:'master', url:'http://10.220.5.232/gp1/wordpress.git', credentialsId:'119a7e29-4c6c-4f75-bfdb-56fa0edcafaa' } } } stage("print bianlian"){ steps{ sh """ set +x echo "===============start job==============" echo "你選的型別是 $deploy_env" echo "your version is $version" echo "===============stop job ==============" set -x """ } } } }