Jenkins 无法连接到存储库

Xen*_*yal 5 ssh bitbucket jenkins

我正在尝试将 Jenkins 连接到一个私有的 BitBucket 存储库。

我有一组(id_rsa 和 id_rsa.pub)在/var/lib/jenkins/.ssh. 我已复制id_rsa.pub密钥并将其粘贴到我的 BitBucket 存储库的部署密钥部分。同样,运行该命令git ls-remote -h git@bitbucket.org:user/project.git有一个有效的返回并已添加到known_hosts.

什么可能导致我的 Jenkins 在 Jenkins 的 git 源代码管理部分无法连接?返回的错误是:

无法连接到存储库:命令“git -c core.askpass=true ls-remote -h https://git@bitbucket.org/user/project.git HEAD”返回状态代码 128:stdout:stderr:remote:无效用户名或密码。如果您通过第三方服务登录,您必须确保在您的帐户配置文件中设置了帐户密码。致命:“ https://git@bitbucket.org/user/project.git/ ”的身份验证失败

我还ssh -Tv git@bitbucket.org按照Atlassian 的这篇关于解决 SSH 问题的文档进行了尝试。回报指出:

此部署密钥具有对以下存储库的读取访问权限:

用户/项目:詹金斯——jenkins@ip-xxx-xx-xx-xxx

Xen*_*yal 4

对于 Jenkins 的Git 插件提供的项目存储库字段,似乎该字段主页中显示的示例之一(具体来说,https://git@bitbucket.org/user/project.git)不起作用。这可能是插件版本的问题,也可能是 BitBucket 的配置方式与 GitHub 不同(他们的文档使用了 GitHub 的示例)。

然而,对我有用的是使用以下格式的 git 地址:

git@bitbucket.org:user/project.git
Run Code Online (Sandbox Code Playgroud)