1. 程式人生 > >Jenkins 釋出spring boot專案 的 配置 (version: 2.138.2)

Jenkins 釋出spring boot專案 的 配置 (version: 2.138.2)

配置 一

此配置為 Jenkins在Centos7 上部署

  1. General配置 在這裡插入圖片描述

  2. 原始碼管理 - svn地址 + 憑證

  3. 構建觸發器 (H/30 * * * * 代表 : 構建一次/30分鐘 ) 在這裡插入圖片描述

  4. 構建 + 釋出 在這裡插入圖片描述

******* 重點是指令碼 *******

#!/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*************************"