jenkins 2:用ssh agent插件在pipeline里实现scp和远程执行命令
Posted aguncn
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jenkins 2:用ssh agent插件在pipeline里实现scp和远程执行命令相关的知识,希望对你有一定的参考价值。
昨晚测试成功了。
现在ssh agent的认证,已不支持明文用户密码,而只能用加密方式实现。
所以我先在jenknis和nginx服务器之后,实现ssh免密码rsa证书登陆。
私钥放jenkins,公钥放nginx。然后,将私钥拿出来,后面要写入jenkins凭据的。
有了这个操作前提之后,安装完成ssh agent,pipeline的样例里就有它的写法了。
但我又发现一个问题:
使用jenkins的生成样例代码放到pipeline里是不行的。
sshagent([‘70563f04-cd7a-49a9-b733-ec9622d8822a‘]) { // some block }
但使用ssh agent帮助的样例是OK的。
node { sshagent (credentials: [‘deploy-dev‘]) { sh ‘ssh -o StrictHostKeyChecking=no -l cloudbees 192.168.1.106 uname -a‘ } }
截个图作下说明。
以上是关于jenkins 2:用ssh agent插件在pipeline里实现scp和远程执行命令的主要内容,如果未能解决你的问题,请参考以下文章
为Windows 8上的Jenkins启用ssh-agent作为服务
jenkins添加执行机(slave_agent)的方法及应用
Jenkins SSH 插件/SSH 代理插件:异常:超时:未建立套接字