Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jenkins GIT连接问题_Git_Jenkins - Fatal编程技术网

Jenkins GIT连接问题

Jenkins GIT连接问题,git,jenkins,Git,Jenkins,我在指定存储库路径时收到此错误ssh://Administrator@WS-GIT/GitCentralRepository/Development在我的Jenkins工作中 "Failed to connect to repository : Command "ls-remote -h ssh://Administrator@WS-GIT/GitCentralRepository/Development HEAD" returned status code 128: stdout: stder

我在指定存储库路径时收到此错误ssh://Administrator@WS-GIT/GitCentralRepository/Development在我的Jenkins工作中

"Failed to connect to repository : Command "ls-remote -h ssh://Administrator@WS-GIT/GitCentralRepository/Development HEAD" returned status code 128:
stdout:
stderr: FATAL ERROR: Disconnected: No supported authentication methods available (server sent: publickey,keyboard-interactive)
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists."

我可以从GITExtensions客户端克隆这个项目,只要指定相同的存储路径。我在Windows7上运行Jenkins作为windows服务。请帮助

我访问此页面时基本上遇到了相同的问题,我可以从jenkins主机与用户成功运行“git ls remote”,但我无法从jenkins凭据插件使用它

我错误配置的是一件愚蠢的事情,凭证插件需要私钥而不是公钥

我的Jenkins和gerrit服务器都在linux下,但这对这个问题应该没有影响

以防万一有人看到这一页有类似的问题。 我的场景是,我想配置一个非交互用户no passw,将一个特定的repo从gerrit克隆到Jenkins

如果这是你的情况,请确保

1在jenkins中创建一个非交互组,并将非交互用户添加到该组中 i、 e用户jenkins,首先生成提供空密码的ssh密钥

ssh-keygen-t rsa

然后在gerrit中创建用户并将其添加到非交互式用户组

cat~jenkis/.ssh/id_rsa.pub | ssh-p 29418 your.gerrit.instance.com gerrit create account-group'Non-Interactive Users'-ssh key-jenkins

2确保您尝试克隆的项目已为非交互组授予读取权限。您可以在gerrit webUI中执行此操作

注意:如果像我尝试解决此问题时那样,碰巧直接在gerrit数据库中更改ssh密钥,则需要刷新gerrit ssh缓存

ssh-p 29418 review.example.com gerrit flush缓存-缓存sshkeys

3确保在Jenkins凭证插件中提供步骤2中生成的private key.ssh/id_rsa的内容

在Jenkins的工作中,使用如下url

ssh://jenkins@your.gerrit.instance.com:29418/yourRepoName

希望这能帮助别人

联邦快递


查看此帖子也可能有所帮助

这似乎是一个身份验证问题。您是否已将Jenkins配置为具有从该repo克隆的正确凭据?我正在使用基于密钥公钥的身份验证,并且我已尝试通过putty生成带和不带密码短语的密钥。请注意,我可以使用相同的存储库URL,通过GIT客户端程序GIT Extensions从存储库进行克隆。客户端程序只询问SSH密钥位置,当我提供它时,它会在后台加载authentication agent程序并连接到存储库。我知道您可以毫无问题地进行克隆。我的问题是詹金斯本人是否有权获得这些证书。我不知道您的Jenkins是如何配置的,但是如果它在其他用户中运行,那么它将无法访问您帐户中的SSH密钥。有关更多信息,请参阅此页:Jenkins在windows上以域用户帐户运行。.ssh文件夹位于该用户的c:\users\username文件夹中,环境变量HOME设置为c:\users\username文件夹。我还能够从命令提示符将ls remote命令运行到同一个存储库URL,这将手头的问题缩小到jenkins(我想只有jenkins)。顺便说一句,我是配置领域的新手,请帮助我解决这个问题我在Jenkins v1.532.1上也遇到过这种情况。Jenkins master service在Linux上运行,出现故障的作业的主作业是一个Windows,该Windows配置了Jenkins slave service,可以使用直接在PC上运行时正常工作的同一用户帐户登录。