[英]Configure Jenkins to use GIT On Windows, Got stderr: Permission denied (publickey)
[英]Jenkins issue with Git [Permission denied (publickey).] on Windows
我知道数以千计的主题会触及我的问题,但我在几天内一直在与这个问题作斗争,进展几乎为零;(。
我在 Windows 机器上安装了 Jenkins。
然后获得了 Git 插件和 Git 本身。
一切都是我写作当天的最新版本。
我很高兴开始与 Jenkins 一起玩,但我未能配置我的 Bitbucket 存储库以供 Job 使用。
我设置了 git.exe 的确切路径(因为它似乎是初始问题的原因)[C:\\Program Files\\Git\\cmd\\git.exe]。
然后我尝试使用帐户凭据通过 HTTPS 访问存储库,这里有很多奇怪的错误,所以我想让我们尝试使用 SSH。
我已经生成了 rsa 密钥,在 Bitbucket 存储库中设置了公钥。 然后我在 Jenkins 中创建了凭证配置以使用密码进行 SSH 身份验证。
我在这里有很多问题,因此为了临时解决方法,我明确设置了私钥的值。
最后我到达了我现在所在的地方:
+refs/heads/*:refs/remotes/origin/*" returned status code 128:
stdout:
stderr: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
当我尝试手动复制存储库时,它礼貌地询问我密码短语并完成复制。 当詹金斯的工作做到这一点时,就会发生上述情况。 在作业脚本中的 %USERNAME% 和 %USERDOMAIN% 的帮助下,我获得了与手动执行时相同的值。
很多小时后,我可以说我不能在 Jenkins 中使用 Git ;(
更新
我不相信事情会这么简单。 正如大型机提到的,我将整个 SSH 身份验证的密码留空,它确实有效(即使 Jenkins 在作业的配置页面中仍然显示相同的错误,存储库也被克隆)。 我只是想知道这种设置的任何后果,但现在工作对我来说更有价值。
您的意思是在生成密钥时留下空密码,然后在 Jenkins ssh 凭证中也没有密码配置?
是的,因为 Jenkins 无法将密码提供给 ssh 会话。
但请确保 Jenkins slave 服务使用您的帐户(而不是系统帐户)运行。 它需要您的帐户才能在%USERPROFILE%\\.ssh\\id_rsa(.pub)
找到 ssh 密钥
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.