Jenkins sshagent 执行不工作

Jenkins sshagent execution not working

我正在尝试使用 sshagent 选项将 scp/ftp 文件传输到 windows 和 linux 服务器,但它没有按预期工作,有人可以帮我解决这个问题吗?

凭据应该是什么?我使用了使用 jenkins 创建的加密用户 ID 和密码值。 将 scp 文件发送到 server1 应该执行什么命令?

您不能在 ssh 代理中存储 userid/password 组合,只能存储私钥。

在 Jenkins Web 界面中的 Jenkins -> Credentials -> System -> Global credentials 下,您可以添加新的凭据。在全局范围内使用私钥获取 SSH 用户名。您可以使用 ssh-keygen 来制作私钥。然后您的管道可以执行以下操作:

sshagent (credentials: ['58754abf756cd-6057-.....']) {
  sh 'scp file host:dir'
}

请注意,SSH 代理是一个需要安装的插件。