我正在尝试让Jenkins启动并运行GitHub托管的存储库(使用Jenkins Git插件)。存储库有多个git子模块,所以我不确定是否要尝试管理多个部署密钥。
我的个人GitHub用户帐户是我希望与Jenkins合作的每个项目的合作者,因此我在/var/lib/jenkins/.ssh
中生成了一个SSH密钥,并将其添加到我的个人GitHub帐户中。
但是,当我尝试将存储库URL添加到我的Jenkins项目配置中时,我得到:
Failed to connect to repository : Command "git ls-remote -h git@github.com:***/***.git HEAD" returned status code 128:
stdout:
stderr: Host key verification failed.
fatal: The remote end hung up unexpectedly
同样,当我计划一个构建时,我会得到:
stderr: Host key verification failed.
fatal: The remote end hung up unexpectedly
我还尝试按照概述的here设置SSH配置文件,但无济于事。
有没有人能提供一点线索?谢谢
编辑
我应该补充一点,我运行的是CentOS 5.8
发布于 2013-03-10 03:27:43
看起来jenkins试图连接的github.com
主机没有列在Jenkins user's $HOME/.ssh/known_hosts
下面。Jenkins以jenkins
用户的身份在大多数发行版上运行,因此有自己的.ssh
目录来存储公钥和known_hosts
的列表。
我能想到的解决这个问题的最简单的解决方案是:
# Login as the jenkins user and specify shell explicity,
# since the default shell is /bin/false for most
# jenkins installations.
sudo su jenkins -s /bin/bash
cd SOME_TMP_DIR
# git clone YOUR_GITHUB_URL
# Allow adding the SSH host key to your known_hosts
# Exit from su
exit
发布于 2013-03-10 03:26:15
您是否尝试过以jenkins用户身份登录?
试试这个:
sudo -i -u jenkins #For RedHat you might have to do 'su' instead.
git clone git@github.com:your/repo.git
如果主机没有被添加或授权,你经常会看到失败(因此,我总是以hudson/jenkins的身份手动登录,以便第一次连接到github/bitbucket),但你包含的链接应该可以修复这个问题。
如果上述方法不起作用,请尝试重新复制密钥。确保是pub密钥(即id_rsa.pub)。也许你漏掉了一些角色?
发布于 2013-03-10 03:34:05
https://stackoverflow.com/questions/15314760
复制相似问题