在Jenkins管道中使用SSH代理凭据

时间:2017-11-03 23:08:02

标签: maven jenkins ssh

我有一个Jenkins Pipeline插件的脚本。我已经做了git clone和maven build。但我将*.jar文件传输到远程服务器时遇到问题。在Jenkins设置中,我已经使用ssh密钥为远程服务器添加了配置。它工作正常。 但我无法理解如何在管道脚本中使用这些设置。我用Google搜索了一个例子:

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

但我无法理解此凭据ID 8e9cc002-f19dewiydtwe765-ecec834的位置。我可以在Send files or execute commands over SSH部分中的其他Jenkins项目中使用它 - 只需从下拉列表中选择凭据即可。如何配置管道以使用此凭据(密钥,密码,用户名,服务器地址等)?

1 个答案:

答案 0 :(得分:4)

当您创建凭证时,手动指定该凭证ID,或者如果您不这样做,Jenkins将为您构建一个非常丑陋的凭据ID。您可以在凭据页面上看到ID。

我总是手动分配一个ID,所以我不必使用那些丑陋的ID,因此它在jenkins文件中更加自我记录。