我最近有一个类似的问题,尽管它在docker容器中。日志给人的印象是ssh-agent退出得太早,但是实际上问题是我忘记了将git服务器添加到已知主机。
我建议将ssh-ing到您的jenkins master上,并尝试执行与ssh-agent(cli)管道相同的步骤。然后,您将看到问题出在哪里。
例如:
eval $(ssh-agent -s)ssh-add ~/yourKeygit clone
如在help.github.com上解释的
更新:这里是一个用于添加knownHosts(如果尚未添加)的实用程序:
void tryAddKnownHost(String hostUrl){ // ssh-keygen -F ${hostUrl} will fail (in bash that means status pre != 0) if ${hostUrl} is not yet a known host def statusCode = sh script:"ssh-keygen -F ${hostUrl}", returnStatus:true if(statusCode != 0){ sh "mkdir -p ~/.ssh" sh "ssh-keyscan ${hostUrl} >> ~/.ssh/known_hosts" }}


