一谒府、新建一個(gè)自由風(fēng)格項(xiàng)目
image.png
二、配置參數(shù)化構(gòu)建過程
-
添加選項(xiàng)參數(shù)
image.png
填入以下內(nèi)容
image.png
2.添加字符參數(shù)
image.png
三演痒、配置SVN
image.png
四、配置構(gòu)建步驟
1. maven打包配置
-
選擇調(diào)用頂層Maven目標(biāo)趋惨,Maven版本之前已經(jīng)在全局工具配置中設(shè)置過鸟顺,目標(biāo)中填入打包命令
image.png
2. 執(zhí)行shell配置
-
此腳本為打包備份讯嫂,回滾腳本
image.png
填入以下腳本
備份回滾腳本
case $Status in
Deploy)
echo "Status:$Status"
path="${WORKSPACE}/bak/${BUILD_NUMBER}" #創(chuàng)建每次要備份的目錄
if [ -d $path ];
then
echo "The files is already exists "
else
mkdir -p $path
fi
\cp -f ${WORKSPACE}/target/*.war $path #將打包好的war包備份到相應(yīng)目錄,覆蓋已存在的目標(biāo)
echo "Completing!"
;;
Rollback)
echo "Status:$Status"
echo "Version:$Version"
cd ${WORKSPACE}/bak/$Version #進(jìn)入備份目錄
\cp -f *.war ${WORKSPACE}/target/ #將備份拷貝到程序打包目錄中欧芽,并覆蓋之前的war包
;;
*)
exit
;;
esac
-
這樣發(fā)布后以后葛圃,就會(huì)備份如下
image.png
image.png
3. 定期刪除腳本
- 項(xiàng)目備份不可能無(wú)限制備份,這樣很快就會(huì)占滿磁盤库正,所以我們必須有清除老舊備份的機(jī)制褥符。此處配置一個(gè)腳本,每次發(fā)布都執(zhí)行一次喷楣,判斷備份數(shù)是否超過5個(gè)鹤树,如果超過逊朽,則刪除老舊備份,只保留最新的5個(gè)追他。
-
再添加一個(gè)執(zhí)行shell步驟绽榛,填入以下腳本,其中備份數(shù)量可以自行修改減小或加大
刪除老舊備份腳本
ReservedNum=5 #保留文件數(shù)
FileDir=${WORKSPACE}/bak/
date=$(date "+%Y%m%d-%H%M%S")
cd $FileDir #進(jìn)入備份目錄
FileNum=$(ls -l | grep '^d' | wc -l) #當(dāng)前有幾個(gè)文件夾灭美,即幾個(gè)備份
while(( $FileNum > $ReservedNum))
do
OldFile=$(ls -rt | head -1) #獲取最舊的那個(gè)備份文件夾
echo $date "Delete File:"$OldFile
rm -rf $FileDir/$OldFile
let "FileNum--"
done
五届腐、配置發(fā)送到遠(yuǎn)程tomcat目錄
image.png
其中Source files要注意配置正確,否則發(fā)送不了war包犁苏,我的jenkins該項(xiàng)目的workspace如下:
image.png
六围详、發(fā)布
- 回到項(xiàng)目主界面,點(diǎn)擊Build with Parameters
-
發(fā)布選擇Deploy--->開始構(gòu)建买羞,即可開始發(fā)布雹食。
image.png -
回滾選擇Rollback--->輸入回滾版本---->開始構(gòu)建,版本號(hào)從構(gòu)建歷史中選擇一個(gè)輸入