日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

码云Webhook触发Jenkins自动构建 - Jenkins演练(一)

發布時間:2024/4/17 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 码云Webhook触发Jenkins自动构建 - Jenkins演练(一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? 今天自己看著插件文檔摸索了一下,實現了git push后Webhook自動觸發Jenkins進行代碼構建,可通用gitlab、github等平臺,中文關于這方面自動部署的文檔比較少,所以把我的學習過程記錄下來,讓其他人少走點彎路。


? 模擬場景:開發人員在dev分支提交代碼后,Jenkins自動構建和部署,非dev分支提交代碼不會觸發。


? 實戰環境:碼云(git.oschina.net)、Jenkins(可在公網訪問)、插件Generic Webhook Trigger


? 步驟1:

? 碼云新增一個項目,新增兩個分支(uat、dev),放一些文件


? 步驟2:

? Jenkins安裝Generic Webhook Trigger插件,插件的文檔在這里(https://plugins.jenkins.io/generic-webhook-trigger)


? 步驟3:

? 新建一個自由任務,Geneal留空不影響本次實驗;源碼管理填入碼云的項目地址,添加碼云的登陸用戶和密碼;本次實驗是構建dev分支,所以我填了 */dev


? 步驟4:

? 構建觸發器這一步比較關鍵,卡了好久,首先我們先去看看碼云關于Webhook文檔(http://git.mydoc.io/?t=154711?),我們要抓取研發push這個Webhook POST過來的數據,然后根據里面內容關鍵字ref判斷是否為開發分支,如果是開發分支,則讓Jenkins拉開發分支最新的代碼下來構建。所以圖四,勾選插件觸發器,給抓出來的數據起個變量名ref,抓取內容為$.ref(看碼云的文檔)。


? 好,稍微下來一點,我們只需要獲取POST數據,header和request不用理。接下來也很關鍵,定義過濾出來什么字串才觸發這個任務。所以使用正則匹配,text為匹配出什么結果就觸發這個任務,于是我們填入剛才抓取臨時存放的變量$ref,注意這里不是原始數據的$.ref。


? 步驟5:剩下就是告訴拉完代碼下來之后做什么操作了,后面的文章會講到,這里我就隨便輸出點東西了。


? 步驟6:點擊保存之后,回到碼云的項目管理頁面,填入URL

? URL格式為 http://有讀權限的用戶名:該用戶名密碼@jenkis地址/generic-webhook-trigger/invoke

? 密碼可不填(看了文檔還沒明白是包含在哪里,還得研究)


???? 點擊測試,返回ok就說明接口能用了,如果返回如下,則用戶名密碼可能沒填或者沒對。

{"status":"ok","data":{"triggerResults":{"ANY":"Did?not?find?any?jobs?to?trigger!? The?user?invoking?/generic-webhook-trigger/invoke?must?have?read?permission?to?any? jobs?that?should?be?triggered.?You?may?try?adding?http://user:passw@url...?or?configuringand?passing?an?authentication?token?like?...trigger/invoke?token=TOKENHERE"}}}


??? 最后,在dev分支提交代碼,就會觸發任務了,至此需求完成。


ps:碼云點測試按鈕默認是觸發master push,實驗過程有問題,可以只勾選一項,不作判斷,就可以測試觸發了,如下圖。

轉載于:https://blog.51cto.com/tseyuzen/1960905

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的码云Webhook触发Jenkins自动构建 - Jenkins演练(一)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。