jenkins@jenkins-server --- 验证(使用 RSA key )---> git@gitlab-server
jenkins@jenkins-server --- 验证(使用 RSA key )---> user@qa-server
从命令行输出如预期
jenkins@jenkins-server $ ssh user@qa-server 'ssh -T git@gitlab-server'
Welcome to GitLab, Anonymous!
从 Jenkins 作业运行与“执行外壳”构建步骤完全相同的命令,输出是相同的(如预期的那样)。当使用“通过 SSH 发送文件或执行命令”构建步骤时,jenkins 能够连接到
user@qa-server
但是,ssh -T git@gitlab-server
远程命令失败Permission denied, please try again.
Permission denied, please try
again. Permission denied (publickey,password).
看起来像
ssh-agent
未在 qa-server
上运行在这种特殊情况下。所有服务器都运行 Ubuntu 服务器。
我有 Jenkins SSH Agent Plugin安装和配置。
如何调试这个(和/或修复)。
我怎样才能看到 Jenkins 正在运行的确切命令?
最佳答案
不知何故或错误地(我不确定) ssh-agent 在 qa-server
上运行。 (从 .bash_profile 开始加载可用的 key )。
一旦我停止在 qa-server
上运行的 ssh-agent一切都开始顺利。
回顾:ssh-agent
正在运行 jenkins-server
由 jenkins SSH 代理启动
并且没有 ssh-agent
运行于 qa-server
.
关于ssh - jenkins ssh 代理转发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29949711/