https://blog.****.net/cdnight/article/details/81078191
安装这篇解决的
正确使用脚本的方式:
1、脚本必须使用jenknins用户,且所有命令必须使用sudo 否则报错
#!/bin/bash -ilex
sudo su -s /bin/bash jenkins
sudo scp -r /var/lib/jenkins/jobs/moven-test/workspace/target/ssoserver.war root@192.168.0.72:/usr/local/apache-tomcat-8.5.31/webapps/
2、要有使用sudo的所有权限,就是使用scp等命令不需要密码
添加如下内容到 visudo里面,然后强制保存 wq!
[root@node2 ~]#visudo
jenkins ALL=(ALL) NOPASSWD: ALL
3、jenkins用户必须可以免密登录
[jenkins@node2 root]$ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.0.72
[jenkins@node2 root]$ssh root@192.168.0.72
Last login: Tue Sep 25 15:51:41 2018 from 192.168.0.76
报错解决:
1、
sudo: no tty present and no askpass program specified
解决:
切换到root下
vi /etc/sudoers
为用户添加免密码
jenkins ALL=(ALL) NOPASSWD: ALL
2、
Host key verification failed
原因是没有用jenkins账号,脚本必须使用 sudo jenkins;且没有在jenkins用户下配置免密远程登录tomcat主机