这是我的场景:
我已经按照Jenkins 路径中的指示配置了两个 Git 安装到 git Windows master / Linux slave。Git 安装设置如下:
WindowsGit| 小路:C:\Program Files\Git\bin\git.exeLinuxGit| 小路:/usr/local/bin/git因为我需要在 linux slave 上运行作业,我的作业 git 配置指向 LinuxGit(Git 可执行选项)。作业运行良好,没有问题。但是,当我尝试使用“Poll SCM”选项时,它会中断。我相信这里的问题是因为 Poll SCM 在 Windows Master 上运行,并且此作业的 Git 信息指向 LinuxGit。Git 轮询日志显示:
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 时在主从上混合 Windows/Linux。这个解决方案甚至允许在多个混合的 Windows/Linux 从站上运行相同的作业,并且不会破坏主轮询 scm:
无论您的 Jenkins Master 平台是什么,请配置默认的 git 安装以指向该平台的有效 git。例如,c:\apps\git\bin\git.exe对于 Windows。然后为每个节点配置自定义“工具位置”。通过这种方式,master 将能够轮询 git 以检查更改并在从站上触发作业。Slave 将能够克隆 git 代码,因为它具有(Git) Default 的自定义位置。正确配置步骤:
/usr/local/bin/git)linux 从节点的节点配置应如下所示:
我相信额外的“git 安装”更合适,正如@Jayan 提到的那样,当您需要安装多个 git 或出于某种原因需要运行特定版本的 git 以选择 Jenkins 作业时。
| 归档时间: |
|
| 查看次数: |
2543 次 |
| 最近记录: |