簡體   English   中英

如何從多個存儲庫觸發詹金斯管道

[英]How to trigger a jenkins pipeline from multiple repository

我對jenkins來說還比較陌生,並且我正在從事一個大型項目,該項目從多個存儲庫中構建。 我用外殼程序命令編寫了一個聲明性管道,該命令從所需的存儲庫中提取並構建項目,並且一切正常,但是我想將此管道連接到所有這些存儲庫,以便每次有新的提交或合並請求時,觸發jenkins並啟動此管道,然后根據構建結果標記git。 我知道如何為一個倉庫執行此操作,但我不知道如何為多個倉庫進行操作。

如果您有多個應該觸發Jenkins構建的存儲庫,則各個存儲庫都需要有Jenkinsfiles。

關鍵是每個存儲庫都應調用JenkinsSharedLibrary,這使您可以在一個中央源中維護jenkins構建,而不是每個存儲庫具有多個“硬編碼” jenkins文件。

本文介紹了共享庫的用例以及如何在多個git倉庫中使用Jenkins。

https://bjurr.com/managing-1000-repos-in-jenkins-with-a-breeze/

由於我們的網絡基礎架構,我無法使用webhook來觸發jenkins,但現在使用的解決方案是我為每個回購創建了一個運行器,並編寫了curl命令來觸發jenkins,因此每次有新提交時跑步者在每個倉庫中都開始一項新工作,執行curl命令並觸發我的詹金斯工作。

這是我在有人需要時使用的curl命令:

curl -i -X POST --user [JENKINS_USERNAME]:[JENKINS_PASSWORD] 'http://[JENKINS_IP]:[JENKINS_PORT]/job/[JENKINS_JOB_NAME]/build?token=[TOKEN_GENERATED_INSIDE_JENKINS]&cause=[ADDITIONAL_INFORMATION_THAT_YOU_WANT_TO_PRINT]'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM