在Jenkins流水线中使用SSH代理凭据

3

我有一个Jenkins Pipeline插件的脚本。我已经完成了git clone和maven build。但是我在将*.jar文件传输到远程服务器时遇到了问题。在Jenkins设置中,我已经使用ssh密钥为远程服务器添加了配置。它也正常工作。 但我不知道如何在pipeline脚本中使用这些设置。我通过谷歌找到了一个例子:

sshagent(['8e9cc002-f19dewiydtwe765-ecec834']) {
        sh "ssh user@server \"echo ${env.BUILD_ID}\""
    } 

但我不知道这个凭据ID 8e9cc002-f19dewiydtwe765-ecec834 从哪里来。在通过SSH发送文件或执行命令部分中,我可以在其他Jenkins项目中使用它 - 只需从下拉列表中选择凭据即可。如何配置管道以使用此凭据(密钥、密码、用户名、服务器地址等)?

1个回答

4

当您创建凭据时,可以手动指定凭据ID,否则Jenkins将为您构建一个类似于那样的大而丑陋的ID。您可以在凭据页面上查看ID。

我总是手动分配ID,这样我就不必使用那些丑陋的ID,并且在jenkinsfile中更容易自我记录。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接