jenkins整合gitlab时,Source Code Management添加gitlab仓库路径不管怎么尝试都报以下两个异常:git
Failed to connect to repository : Command"git ls-remote -h git@xxxxx.com:xxx/dev_test.git HEAD"returned status code128:api
stdout:ssh
stderr: Permission denied, please tryagain.gitlab
Permission denied, please try again.code
Permission denied(publickey,gssapi-keyex,gssapi-with-mic,password).rem
fatal: The remote end hung up unexpectedlyjenkins
或it
Failed to connect to repository : Command"/usr/local/git/bin/git -c core.askpass=true ls-remote -h http://www.xxx.com/gitlab/root/test.git HEAD"returned status code128:io
stdout:test
stderr: fatal: Unable tofindremote helperfor‘http‘
缘由是:因为运行jenkins用户没有生成ssh私钥,且没有添加gitlab中。所以致使了如上异常。
生成ssh私钥
ssh-keygen-t rsa -C"admin@example.com"
运行上述命令,并一路回车便可生成相应的私钥。
将私钥添加到gitlab
cat~/.ssh/id_rsa.pub
将全部内容添加到gitlab-->Profile Settings-->SSH Keys-->Add an SSH key。
保存后重启jenkins便可。