使用Jenkins和Git进行身份验证

sku*_*rty 5 git jenkins

我想将Jenkins与Bitbucket上的存储库一起使用.为此,我使用用户jenkins和命令创建了一个ssh密钥ssh-keygen -t rsa -C "my_email".我在Bitbucket上添加了公钥,我可以用它来克隆一个项目git clone ....

但是当我在Jenkins中配置项目时,我把网址 git@bitbucket.org:my_username/my_repository.git

这是错误:

Failed to connect to repository : Command "git ls-remote -h git@bitbucket.org:skurty/ma-carte-augmentee-bo.git HEAD" returned status code 128:

stdout: 

stderr: ssh_askpass: exec(/usr/bin/ssh-askpass): No such file or directory 
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
Run Code Online (Sandbox Code Playgroud)

如果我做ssh git@bitbucket.org,我得到:

PTY allocation request failed on channel 0
conq: logged in as my_username.

You can use git or hg to connect to Bitbucket. Shell access is disabled.
Connection to bitbucket.org closed.
Run Code Online (Sandbox Code Playgroud)

我也尝试创建文件~/.ssh/authorized_keys并将其放入公钥,但同样的问题.

我也重新启动了jenkins sudo /etc/init.d/jenkins restart

谢谢您的帮助 :)

PS:我正在Debian Squeeze 64位

小智 1

您的私钥是否id_rsa位于jenkins用户的主目录中?

如果您使用本机包安装,则该文件应位于/var/lib/jenkins/.ssh且 的权限/var/lib/jenkins/.ssh应为700,而 的权限/var/lib/jenkins/.ssh/id_rsa应为600