我刚刚在亚马逊EC2盒子上安装了jenkins,我正在尝试设置一份工作。我已经安装了git插件,然后我在作业的git repo字段中提供了我的repo的url,我收到以下错误。
Failed to connect to repository : Command "git ls-remote -h https://apprick@bitbucket.org/apprick/apprickwebapp.git HEAD" returned status code 128:
stdout:
stderr: fatal: Authentication failed
该存储库是一个私有的存储在bitbucket,我知道我应该在这个git插件的某个地方提供用户名和密码,但我不知道在哪里。附件是截图以供参考。
答案 0 :(得分:4)
我发现了问题。我必须将我的ssh密钥添加到bitbucket服务器。基本上这些步骤
并且你已经完成了。
答案 1 :(得分:1)
我遇到了类似的问题 - 如上面的屏幕截图所示,我正在以格式输入“连接字符串”格式: https://<user>:<password>@<URL>
并收到“连接失败” “连接网址减少到https://<user>@<URL>
的地方 - 当然很清楚,为什么它失败了:密码没有提交!?
在挖掘后我发现了这个原因。在问题发生的环境中,我有一个更新的Jenkins版本(没问题:)。但是,较新的Jenkins安装了最新的插件'GIT-client'版本1.4.4和'GIT'版本2.0。
这显然导致了一个问题。分别恢复到版本1.0.7 1.5.0(以及Jenkins重启)解决了它。将其中一个插件保留在较新版本上并仅降级另一个版本会产生另一个症状:GIT不再可用于配置。因此两个插件之间存在依赖关系。
“百万美元问题”是:这是这些插件中的错误吗?或者他们只是需要以不同的方式处理/配置它们。到目前为止,我没有找到任何暗示......
答案 2 :(得分:0)
对此有更多了解(就像我对Jenkins: Failed to connect to repository的回复一样)
简而言之: 恕我直言,凭证帮助插件是导致所有问题的主要原因,并且在版本1.9.4中仍然存在错误!
以下解决方法如何解决问题(即使使用较新的/ st GIT-Client / GIT插件)
Jenkins服务流程需要能够处理Web服务器证书。只是Jenkins服务不使用全局'.gitconfig',但需要明确指向持有此证书的密钥库。然后,对于服务启动,请使用附加参数
'-Djavax.net.ssl.trustStore =“keystore”'
如果您随后将登录凭据放入'.netrc',则无需再在Jenkins中指定任何凭据......
但是使用凭证助手插件......没有运气:( 如果有人知道,请回复