我们如何在密码中传递jenkins作业中的运行时参数

时间:2018-05-14 18:24:41

标签: jenkins jenkins-pipeline

当jenkins工作正在运行时,它要求提供以下凭证: [sshexec]输入数据源用户的密码

请告诉我们如何进一步处理此问题。

1 个答案:

答案 0 :(得分:0)

Jenkins设计了一个插件:Credential插件 https://wiki.jenkins.io/display/JENKINS/Credentials+Plugin

您可以在此插件中设置数据,然后可以在以后的构建中重复使用。与它们是常规shell变量的方式相同。

spawn ssh id@server
match_max 100000
expect "*?assword:*"
send -- "$your_password\r"
send -- "\r"
interact

但如果我可以提供建议,这不是在SSH中连接的最佳方式。

你应该使用ssh键让你获得密码步骤。

您生成密钥:

ssh-keygen -t rsa -b 4096

您将其推送到您的服务器:

ssh-copy-id id@server

然后您无需任何密码即可登录:

ssh id@server