赞
踩
Failed to connect to repository : Command "git.exe ls-remote -h -- git@git.website.git HEAD" returned status code 128:
stdout:
stderr: Load key "C:\\WINDOWS\\TEMP\\jenkins-gitclient-ssh2354736407399704944.key": invalid format
git@codeup.aliyun.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
使用SSH验证的方式来获取仓库代码的权限,在Jenkins凭据中添加全局凭证(Key是用git生成的本机rsa私钥)。
在新建的自由任务中设置git仓库地址后,选用了刚刚设置的全局凭证。发现报错获取不到凭证。
1. 可能是解析密钥不正确,密钥没有复制全导致
2. 可能是Jenkins登录的账号获取不到本机的ssh加密配置。
把密钥复制到全局凭证Key中时,要将密钥上下的START和END那两段都要复制完全。复制成功后就不会报错了。
设置方式:
查看本机rsa公钥配置:
打开上面的rsa目录:
打开id_rsa文件,复制所有内容,包括开始和结束段。
全局配置,选中Enter directly:把密钥全部复制进去即可。
如果想给Jenkins加一个默认的ssh验证方式,可以直接把ssh配置文件复制到Jenkins的配置文件下面,这样当Credentials选择为无时便会加载默认的ssh配置文件了。
设置方式:
再打开Jenkins的 登陆账号的配置地址:
ok,发现Jenkins没有相应的rsa配置,直接把rsa的公钥和私钥复制到Jenkins的ssh地址下即可。
复制完成之后,重新打开Jenkins,在Credentials的配置中选择无,错误消息了。
参考:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。