对于本地命令行可正常访问并操作 Git,并且 Jenkins 中正常添加 Git 的 SSH 证书无误的情况下,Jenkins 仍然无法连接 Git 的情况,检查本地 Jenkins 账号访问 SSH 证书(以 id_rsa_cx 为例)的权限。
# ls -al /Users/Shared/Jenkins/.ssh
drwxr-xr-x 4 jenkins jenkins 128 Feb 7 2017 .
drwxr-xr-x 11 jenkins jenkins 352 Apr 27 2017 ..
-rw------- 1 jenkins jenkins 1679 Apr 27 2017 id_rsa
-rw-r--r-- 1 jenkins jenkins 393 Jun 13 11:20 known_hosts
由于 id_rsa_cx 是以当前系统用户身份生成,故需要手动复制到 Jenkins 账户下
1. # sudo cp ~/.ssh/id_rsa_cx /Users/Shared/Jenkins/.ssh/ #以 root 身份将 id_rsa_cx 拷贝到 Jenkins 账户下
2. # sudo chown jenkins:jenkins /Users/Shared/Jenkins/.ssh/id_rsa_cx #修改 id_rsa_cx 拥有者为 Jenkins
3. # ls -al /Users/Shared/Jenkins/.ssh #查看结果
drwxr-xr-x 5 jenkins jenkins 160 Jun 13 12:32 .
drwxr-xr-x 11 jenkins jenkins 352 Apr 27 2017 ..
-rw------- 1 jenkins jenkins 1679 Apr 27 2017 id_rsa
-rw------- 1 jenkins jenkins 3247 Jun 13 12:32 id_rsa_cx
-rw-r--r-- 1 jenkins jenkins 393 Jun 13 11:20 known_hosts
4. 返回 Jenkins 配置页,重试成功!