一、说明
- 作用:通过ssh连接其他Linux机器,向远端机器发送文件和执行命令。
- 官方文档:Publish Over SSH Plugi
二、配置
1、创建主机配置
找到SSH部分(如下)
说明:
- Passphrase:如果密钥用密码加密,将密码设置在此处。
- Path to file:在Jenkins主机上的位置,使用私有SSH密钥。该路径可以是密钥的绝对路径,也可以是相对于JENKINS_HOME目录的绝对路径。
- Key:将私钥粘贴到此框中。关键应该包括页眉和页脚线(----)以及之间的所有内容。
- Disable exec:此选项将删除从此插件执行命令的功能。如果选中此选项,则SSH服务器的“高级”部分中的“禁用exec”选项将被忽略。
2、添加SSH服务器
点击“SSH服务器”旁边的“添加”按钮,填写名称,主机名,用户名和远程目录。
高级选项
Use password authentication, or use a different key:三种验证方式
- Passphrase / Password:如果配置了密钥或密钥的路径,则这是与加密密钥一起使用的密码。 如果没有配置密钥,那么这将是用于密码认证的密码。
- Path to key:在Jenkins主机上的位置,使用私有SSH密钥。 该路径可以是密钥的绝对路径,也可以是相对于JENKINS_HOME目录的绝对路径。
- Key:将私钥粘贴到此框中。关键应该包括页眉和页脚线(----)以及之间的所有内容。
Disable exec:此选项将删除从此插件执行命令的功能。如果选中此选项,则SSH服务器的“高级”部分中的“禁用exec”选项将被忽略。
备注:需要将公钥添加到远程服务器,确保公共密钥(上面配置的私钥的公钥)位于您要连接到的服务器上连接的用户的授权密钥文件中。
验证:
三、在构建期间使用SSH
此插件包括一个构建器,可以在构建过程中使用发布者。
这意味着您可以将新创建的包发送到远程服务器并进行安装,启动和停止构建可能依赖的服务以及许多其他用例。
将作业配置为通过SSH发布
显示如下界面
具体字段含义,查看官方文档:Publish Over
命令代码如下:
#!/bin/bash
export JAVA_HOME=/usr/java/jdk1.8.0_131
TOMCATTHREAD=`ps aux | grep '8081' | grep -v grep`
if test -z "$TOMCATTHREAD"
then
echo "TOMCAT NOT START"
else
THREADLIST=(${TOMCATTHREAD// / })
PID=${THREADLIST[1]}
kill -9 $PID
sleep 3s
fi
cd /usr/local/tomcat/apache-tomcat-8.5.15-8081/webapps
rm -rf projectName
cd /usr/local/tomcat/apache-tomcat-8.5.15-8081/bin
./startup.sh
sleep 5s