【发布时间】:2012-02-02 00:41:46
【问题描述】:
我对 Jenkins 和私人 Github 存储库有一个小问题。 要查看私人仓库,通常需要以下两件事之一:
- 该仓库上用户的 SSH 私钥
- 为该存储库注册的“部署密钥”的私有 SSH 密钥
部署密钥是为这种交互而制作的。问题是部署密钥在项目中必须是唯一的,所以我每次都必须使用不同的密钥。
这意味着我必须为 Jenkins 用户为每个额外的 repo 添加另一个密钥到 ssh-agent。
这也意味着默认情况下,代理会尝试所有可用的密钥,并且可能会在使用错误密钥进行几次错误尝试后断开连接。
Jenkins git 插件似乎不允许将其指向 SSH 密钥。 Jenkins 在结帐前不允许任何命令行交互,所以我不能使用任何 bash 技巧来设置正确的密钥。
到目前为止,唯一的解决方案似乎是:
- 在 github 中创建一个“my_jenkins_account”用户
- 为用户添加公钥
- 将帐户添加到我想使用 Jenkins 签出的存储库
- 将用户的私钥添加到jenkins用户中
还有其他建议吗?
【问题讨论】: