MAVEN 配置
MAVEN 配置
GIT 配置
GIT 配置
本地服务器 shell配置
#(war就是tomcat的webapps目录)
#(jar就是自定义目录)
mv /(jenkins的workspace)/xxxx.jar /你自动化部署的目录
#判断是否启动 jar_name : 程序名称带目录,区分同个环境不同目录的测试和开发的服务程序
pid=`ps -ef | grep ${developer_jar} | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
then
echo "Service running"
echo "stoping......"
kill -9 $pid
echo "stoping success"
fi
##war包配置 执行 tomcat 的 bin的startup.sh
sh /tomcat的bin目录/startup.sh
##jar包配置 执行 nohup java -jar 命令
nohup java -Xms1024M -Xmx2048M -jar -Dspring.profiles.active=dev /xxx/${jar_name} > /dev/null 2>&1 &
本地服务器 shell配置
远程服务 SSH 配置
#对于参数填写
Transfer Set Source files : Jenkins 的workspace的相对路径
Remove prefix : 移除上传前缀
Remote directory : 远程的上传的目录(全局配置SSH目录中的相对路径)
Exec command : 执行的命令
SSH配置
#developer_jar : 远程服务器上jar包位置 相对路径 是在前缀是SSH全局配置的路径
developer_jar="mlstore/developer/mlstore_free_coupon.jar"
echo "Restarting ${developer_jar}......"
#查看服务是否存在
pid=`ps -ef | grep ${developer_jar} | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
then
echo "Service running"
echo "stoping......"
kill -9 $pid
echo "stoping success"
fi
#重新启动
nohup java -Xms1024M -Xmx2048M -jar -Dspring.profiles.active=dev /usr/automation/${developer_jar} > /dev/null 2>&1 &
echo "starting......"
#查看服务是否存在
proc_number=`ps -ef |grep -w ${developer_jar}|grep -v grep|wc -l`
if [ ${proc_number} -le 0 ];then
echo "Restarting Failed"
else
echo "Restarting Success"
fi
由于跨服务器上传JAR卡在ssh连接问题,应该是jenkins的SSH有问题,没有解决所以PASS这个方案 改用shell脚步上传到另一台服务器
可以查看相另一篇不使用Jenkins的SSH实现的自动化部署
网友评论