在上一節(jié)一個Jenkinsfile可能被簽入源代碼控制實施。本節(jié)將介紹多支Pipeline的概念, 該Jenkinsfile基礎是在Jenkins提供更多動態(tài)和自動功能的基礎上建立的。
多分支Pipeline項目類型使您可以實現(xiàn)不同Jenkinsfiles在同一個項目的不同分支。在Multibranch Pipeline項目中,Jenkins自動發(fā)現(xiàn),Pipeline和執(zhí)行包含Jenkinsfile源代碼控制的分支Pipeline。
這不需要手動Pipeline創(chuàng)建和管理。
創(chuàng)建多分支Pipeline:
Jenkins使用Pipeline的名稱在磁盤上創(chuàng)建目錄。包含空格的Pipeline名稱可能會發(fā)現(xiàn)不希望路徑包含空格的腳本中的錯誤。
一旦保存,Jenkins自動掃描指定的存儲庫,并為其中包含了庫中的每個分支合適的項目 Jenkinsfile。
默認情況下,Jenkins不會自動重新索引存儲庫以進行分支添加或刪除(除非使用組織文件夾),因此配置多分支Pipeline在配置中定期重新建立索引通常很有用:
Multibranch Pipeline公開了通過env全局變量構建的分支的附加信息,例如:
例如,該Pipeline正在執(zhí)行的分支的名稱master
。
對應于某種改變請求的標識符,例如拉請求號
其他環(huán)境變量列在“ 全局變量引用”中。
通過“GitHub”或“Bitbucket”分支源,多分支Pipeline可用于驗證拉/更改請求。該功能分別由 GitHub分支源 和 Bitbucket分支源 插件提供。有關如何使用這些插件的更多信息,請參閱他們的文檔。
組織文件夾使Jenkins監(jiān)視整個GitHub組織或Bitbucket團隊/項目,并自動創(chuàng)建包含分支和拉請求的存儲庫的新的多支路Pipeline Jenkinsfile。
目前,此功能僅適用于GitHub和Bitbucket,具有由 GitHub組織文件夾 和 Bitbucket Branch Source 插件提供的功能。
更多建議: