我在Jenkins和私有Github仓库上遇到了小问题。要检出私有仓库,通常需要以下两种方法之一:
- 用户在该仓库上的私有SSH密钥。 - 注册为该仓库的“部署密钥”的私有SSH密钥。
部署密钥是为此类交互而设计的。问题是,部署密钥必须在项目间唯一,因此我每次都必须使用不同的密钥。
这意味着我必须为Jenkins用户为每个额外的仓库添加另一个密钥。
这也意味着默认情况下,代理会尝试所有可用的密钥,并且在尝试错误的密钥后可能会断开连接。
Jenkins git插件似乎不允许指向SSH密钥。
在检出之前,Jenkins不允许任何命令行交互,因此我无法使用任何bash技巧来设置正确的密钥。
到目前为止,唯一的解决方案似乎是:
1. 在Github中创建一个“my_jenkins_account”用户。 2. 为该用户添加公钥。 3. 将该帐户添加到我想使用Jenkins检出的仓库中。 4. 将用户的私钥添加到Jenkins用户中。
还有其他替代建议吗?
- 用户在该仓库上的私有SSH密钥。 - 注册为该仓库的“部署密钥”的私有SSH密钥。
部署密钥是为此类交互而设计的。问题是,部署密钥必须在项目间唯一,因此我每次都必须使用不同的密钥。
这意味着我必须为Jenkins用户为每个额外的仓库添加另一个密钥。
这也意味着默认情况下,代理会尝试所有可用的密钥,并且在尝试错误的密钥后可能会断开连接。
Jenkins git插件似乎不允许指向SSH密钥。
在检出之前,Jenkins不允许任何命令行交互,因此我无法使用任何bash技巧来设置正确的密钥。
到目前为止,唯一的解决方案似乎是:
1. 在Github中创建一个“my_jenkins_account”用户。 2. 为该用户添加公钥。 3. 将该帐户添加到我想使用Jenkins检出的仓库中。 4. 将用户的私钥添加到Jenkins用户中。
还有其他替代建议吗?