Jenkins在Windows上发布了Git [权限被拒绝(公钥)。]

时间:2016-03-06 15:08:27

标签: windows git jenkins ssh bitbucket

我知道成千上万的话题触及了我的问题,但是我几天来一直在努力争取这个问题;(。

我在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.

当我尝试手动复制存储库时,它礼貌地问我关于密码短语的问题并完成复制。当Jenkins工作时,上述情况发生了。在Job's脚本的%USERNAME%和%USERDOMAIN%的帮助下,我获得了与手动操作时相同的值。

经过大量时间,我可以说我无法在Jenkins中使用Git;(

更新

我不相信它可以这么简单。正如 mainframer 所提到的,我将passphrase留空以进行整个SSH身份验证,它确实有效(即使Jenkins仍然在作业的配置页面中显示相同的错误,也会克隆存储库)。我只是想知道这种设置的后果,但是工作对我来说更有价值。

1 个答案:

答案 0 :(得分:2)

  

你的意思是在生成密钥时留下空密码,然后在Jenkins ssh凭证中也没有密码配置?

是的,因为Jenkins无法将密码短语提供给ssh会话。

但请确保Jenkins slave服务与您的帐户一起运行(而不是与系统帐户一起运行)。它需要您的帐户才能在%USERPROFILE%\.ssh\id_rsa(.pub)

中找到ssh密钥