配置 一
此配置为 Jenkins在Centos7 上部署
-
General配置
-
源码管理 - svn地址 + 凭证
-
构建触发器 (H/30 * * * * 代表 : 构建一次/30分钟 )
-
构建 + 发布
******* 重点是脚本 *******
#!/bin/bash
cd /home/xindun/jenkins
echo "Execute shell Start"
sh stop.sh
sh replace.sh
echo "Execute shell Finish"
chmod 777 /home/xindun/jenkins/startup.sh
BUILD_ID=dontKillMe nohup /home/xindun/jenkins/startup.sh &
三个文件内容
-----------stop.sh -----------start -----------
#!将应用停止
#!stop.sh
#!/bin/bash
cd /home/xindun/jenkins
echo "Stopping SpringBoot Application for CMP"
pid=`ps -ef | grep cims_eureka-0.0.1-SNAPSHOT.jar | grep -v grep | awk '{print $2}'`
echo $pid
if [ -n "$pid" ]
then
#!kill -9 强制终止
echo "kill -9 的pid:" $pid
kill -9 $pid
fi
-----------stop.sh -----------end -----------
-----------replace.sh -----------start -----------
echo "replace is starting"
jar_name=cims_eureka-0.0.1-SNAPSHOT.jar
#!编译好的jar包存放地址
file_path=/root/.jenkins/workspace/carta_eureka/target
#!将现有的jar备份后,将新的jar包替换
file="/home/xindun/jenkins/cims_eureka-0.0.1-SNAPSHOT.jar"
if [ -f "$file" ]
then
#!删除全部旧版本
rm -rf /home/xindun/jenkins/old/*
mv /home/xindun/jenkins/$jar_name /home/xindun/jenkins/old/cims_eureka-0.0.1-SNAPSHOT.jar.`date +%Y%m%d%H%M%S`
fi
cp $file_path/$jar_name /home/xindun/jenkins
echo "replace END"
-----------replace.sh -----------end -----------
-----------startup.sh ----------- start -----------
export JAVA_HOME PATH CLASSPATH
JAVA_HOME=/usr/local/jdk/jdk1.8.0_171
PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
echo "**********************service-eureka on jenkins starting*************************"
chmod 777 /home/xindun/jenkins/cims_eureka-0.0.1-SNAPSHOT.jar
echo "excuting....."
cd /home/xindun/jenkins
java -jar cims_eureka-0.0.1-SNAPSHOT.jar > logs/carta_eureka.log 2>&1 &
echo "**********************service-eureka on jenkins started*************************"
-----------startup.sh -----------end -----------
应用保存后,直接 构建项目。
配置 二
此配置为Jenkins部署在windows上 构建后向ssh服务器发送并部署
配置二与配置一不同之处为构建install后需要上传至服务器并发布;
Exec command:
#!/bin/bash
cd /home/xindun/idaas
echo "Execute shell Start"
sh stop.sh
sh replace.sh
echo "Execute shell Finish"
chmod 777 /home/xindun/idaas/startup.sh
BUILD_ID=dontKillMe nohup /home/xindun/idaas/startup.sh &
脚本1 -----stop.sh------
#!将应用停止
#!stop.sh
#!/bin/bash
cd /home/xindun/idaas
echo "Stopping SpringBoot Application for CMP"
pid=`ps -ef | grep service-eureka-0.0.1-SNAPSHOT.jar | grep -v grep | awk '{print $2}'`
echo $pid
if [ -n "$pid" ]
then
#!kill -9 强制终止
echo "kill -9 的pid:" $pid
kill -9 $pid
fi
脚本2 -----replace.sh------
echo "replace is starting"
jar_name=service-eureka-0.0.1-SNAPSHOT.jar
#!编译好的jar包存放地址
file_path=/home/xindun/idaas/new
#!将现有的jar备份后,将新的jar包替换
file="/home/xindun/idaas/service-eureka-0.0.1-SNAPSHOT.jar"
if [ -f "$file" ]
then
#!删除全部旧版本
rm -rf /home/xindun/idaas/old/*
mv /home/xindun/idaas/service-eureka-0.0.1-SNAPSHOT.jar /home/xindun/idaas/old/service-eureka-0.0.1-SNAPSHOT.jar.`date +%Y%m%d%H%M%S`
fi
cp /home/xindun/idaas/new/service-eureka-0.0.1-SNAPSHOT.jar /home/xindun/idaas
echo "replace END"
脚本3 -----startup.sh------
export JAVA_HOME PATH CLASSPATH
JAVA_HOME=/usr/local/jdk/jdk1.8.0_171
PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
echo "**********************service-eureka on jenkins starting*************************"
chmod 777 /home/xindun/jenkins/service-eureka-0.0.1-SNAPSHOT.jar
echo "excuting....."
cd /home/xindun/jenkins
java -jar service-eureka-0.0.1-SNAPSHOT.jar > logs/eureka.log 2>&1 &
echo "**********************service-eureka on jenkins started*************************"