背景
Jenkins用于从Git repo构建工件,该Git repo具有一个Git子模块。这些子模块不在同一个repo中,甚至不在同一个终端点上,因此父项目检出良好,因为凭据(ssh密钥A)与主/父repo关联,但可预见的是,在Jenkins的视角下,针对子模块失败,因为凭据(ssh密钥B)与repo无关。
令人惊讶的是,Jenkins没有更好的支持Git子模块的开箱即用功能; 是时候去做出贡献了。
问题
- 是否有一种方法可以为单个Git repo存储多个凭据?
- 如果答案是否定的,为什么Jenkins在高级子模块行为下提供以下选项,如下所示:使用父仓库的默认远程仓库凭据?
- 处理Jenkins和带有不同凭据的Git子模块的其他方法是什么?
系统信息
在Docker Machine(本地)上运行Jenkins
在CentOS(生产)上运行Jenkins
Jenkins版本:2.60.2(两者皆是)
Git插件版本:3.6.4(两者皆是)