Jenkins 釋出spring boot專案 的 配置 (version: 2.138.2)
阿新 • • 發佈:2018-12-16
配置 一
此配置為 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*************************"