Jenkins持續集成案例之-自動化部署

Jenkins是一個開源軟件項目,目的就是提供了一個開放的軟件平臺,讓我們實現軟件集成變成可能,我們經常聽到企業中講CI、CD兩個名詞,這些都可以跟jenkins聯繫在一起,實現持續集成,持續部署及持續交付;

在企業中,Jenkins一般都是批量部署多臺web服務、或者應用程序、多個網站,今天帶大家來學習一下Jenkins批量構建同一網站-多臺服務器的操作案例:

一、Jenkins後臺配置

1)點擊工程名稱-配置-構建後操作-設置Jenkins編譯打包完後,war包存放的位置,如下圖:

wKiom1isA27CdGzKAAA_KmE8Cns169.png

2)然後輸入如下配置:**/target/*.war

wKiom1isA42S2bwMAAAqBxvC0Ck918.png

3)如上-構建觸發器-一個構建步驟,選擇Add-post-build step-Excuteshell

wKioL1isA6CT8HoyAAAuKpOSnPU140.png

4)然後把腳本內容寫入即可

wKioL1isA7nwk9xEAABDRSHx08c482.png

5)代碼如下:

rm -rf /root/.jenkins/workspace/jfedu/target/edu.war
cp/root/.jenkins/workspace/jfedu/target/edu.war /root/.jenkins/jobs/jfedu/builds/lastSuccessfulBuild/archive/target/
ssh  [email protected]  'bash -x -s' < /data/sh/auto_deploy.sh

二、Jenkins部署腳本

#!/bin/bash

#Auto deployTomcat for jenkins perf

#by authorwugk 2016-07-06

exportJAVA_HOME=/usr/java/jdk1.6.0_25

TOMCAT_PID=`/usr/sbin/lsof-n -P -t -i :10013`

TOMCAT_DIR="/usr/local/tomcat/"

FILES="jfedu.war"

DES_DIR="/export/data/tomcatRoot/ptest.jd.com/"

DES_URL="http://123.57.11.203:8080/job/Ptest_Online/lastSuccessfulBuild/target"

BAK_DIR="/export/backup/`date+%Y%m%d-%H%M`"

[ -n"$TOMCAT_PID" ] && kill -9 $TOMCAT_PID

cd $DES_DIR

rm -rf $FILES

mkdir -p $BAK_DIR;\cp-a $DES_DIR/* $BAK_DIR/

rm -rf$DES_DIR/*

wget$DES_URL/$FILES

/usr/java/jdk1.6.0_25/bin/jar -xvf  $FILES

####################

cd$TOMCAT_DIR;rm -rf work

/bin/sh$TOMCAT_DIR/bin/start.sh

sleep 10

tail -n 50 $TOMCAT_DIR/logs/catalina.out

提示:如果有多臺,怎麼去部署,可以發散思維喲!!!可以考慮結合底層saltstack、Ansible工具去實現。

wKioL1isBs_wFxmXAAAtc515M3k275.png

你若覺得作者的文章寫得不錯,請獎勵作者幾錠銀子,讓作者感受到來自你滿滿的鼓勵和繼續創作的動力!我們支持原創!鼓勵原創!

打賞之後,文章底部顯示參與打賞者的記錄,可以直接通過微信掃描打賞喲,直接按打賞根據提示操作。

自定義打賞金額,友情提示打賞金額不要超過50元哦,土豪可以隨意哦,51CTO謝謝您對作者的支持!謝謝你的慷慨大方!

wKioL1lDsc3i7hEqAAAfoPude7I249.png


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章