![](/img/trans.png)
[英]Jenkins path to git Windows master / Linux slave
[英]Jenkins Poll SCM (Git) on Windows master / Build on Linux slave
這是我的場景:
我已經配置了兩個Git安裝,如Jenkins路徑中指示的那樣, 用於git Windows master / Linux slave 。 Git安裝設置如下:
WindowsGit
| 路徑: C:\\Program Files\\Git\\bin\\git.exe
LinuxGit
| 路徑: /usr/local/bin/git
因為我需要在linux slave上運行作業,我的作業git配置指向LinuxGit(Git可執行選項)。 工作運行良好,沒有問題。 但是,當我嘗試使用“Poll SCM”選項時,它會中斷。 我相信這里的問題是因為Poll SCM在Windows Master上運行,而這項工作的Git信息指向LinuxGit。 Git Polling Log顯示:
Caused by: java.io.IOException: Cannot run program "/usr/local/bin/git": CreateProcess error=2, The system cannot find the file specified
另一方面,如果我選擇WindowsGit,Git Polling Log就可以了,但是作業本身顯然會失敗,因為它在Linux Slave上運行。
問題:有人可以考慮一種方法,我可以為源代碼管理配置選擇一個Git安裝,為Poll SCM功能選擇另一個嗎?
根據要求,我發布了自己的一般想法的答案,在使用git時在Master Slaves上混合使用Windows / Linux。 這個解決方案甚至允許在多個Windows / Linux從屬組合上運行相同的工作,也不會破壞Master輪詢scm:
無論您使用Jenkins Master平台,都要將默認git安裝配置為指向該平台的有效git。 例如,Windows的c:\\apps\\git\\bin\\git.exe
。 然后為每個節點配置自定義“ 工具位置 ”。 通過這種方式,主設備將能夠輪詢git以檢查更改並在從設備上觸發作業。 然后Slave將能夠克隆git代碼,因為它具有(Git)Default的自定義位置。 正確配置的步驟:
/usr/local/bin/git
) linux從屬節點的節點配置應如下所示:
我相信額外的“git安裝”更合適,正如@Jayan所提到的,當你需要多個git安裝或者你需要為某些Jenkins作業運行特定版本的git時。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.