jenkins自動打包部署linux


 

需要用到2個插件。

git parameter:用於參數化構建時選擇分支。

Publish Over SSH:用於上傳jar包和操作tomcat

 

1.先在系統設置添加要連接的linux服務器,使用用戶名和密碼驗證,不需要私鑰和公匙。並在高級里點擊test是否成功

 

2.新建maven的job,添加參數化構建

3.選擇git,git的分支選擇步驟2的name

 

 

4.maven命令輸入打包install -Dmaven.test.skip=true -U

 

 

5. 添加over ssh,里面參數的配置參考:https://www.cnblogs.com/zz0412/p/jenkins_jj_10.html

6.我是先把jar或者war上傳到BUILD_ID的備份目錄(項目多的話,也可以在增加下$JOB_NAME/$BUILD_ID),然后又把jar復制到tomcat下,Exec command詳見操作命令

#!/bin/sh
#kill tomcat pid
export BUILD_ID=$BUILD_ID

# 1.關閉tomcat
pidlist=`ps -ef|grep 8081|grep -v "grep"|awk '{print $2}'`
function stop(){
if [ "$pidlist" == "" ]
  then
    echo "----tomcat 已經關閉----"
    
 else
    echo "tomcat進程號 :$pidlist"
    kill -9 $pidlist
    echo "KILL $pidlist:"
fi
}

stop
pidlist2=`ps -ef|grep 8081|grep -v "grep"|awk '{print $2}'`
if [ "$pidlist2" == "" ]
    then 
       echo "----關閉tomcat成功----"
else
    echo "----關閉tomcat失敗----"
fi



# 2.移除原來tomcat中webapps中的項目文件夾
rm -rf /usr/local/apache-tomcat-8081/webapps/ROOT/*
rm -rf /usr/local/apache-tomcat-8081/webapps/qingzhutool*
# 3.復制jenkins生成的war包到tomcat中webapps中
cp -r /home/war-jar-bak/$BUILD_ID/qingzhutool.jar /usr/local/apache-tomcat-8081/webapps
sleep 3s
# 4.修改war包的名稱
#mv /usr/local/tomcat_mobile/webapps/mobile.war  /usr/local/tomcat_mobile/webapps/ROOT.war
# 5.啟動tomcat
cd /usr/local/apache-tomcat-8081/bin
sh startup.sh

最后執行sh的時候可能提示沒權限,進入tomcat,給sh文件賦權限即可

chmod +x *.sh


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM