首先須要安裝插件:conditional-buildstepgit
#!/bin/sh #$1:send branch #$2:jenkins build id #$3:git commit branch=$1 version=$2 commit=$3 case $branch in Pre) echo "branch: ${branch}" echo "version: ${version}" echo "commit: ${commit}" #同步代碼到發佈目錄 #to do #備份版本git commit echo ${commit}>/home/wos/test2/${version}.txt ;; Real) echo "branch: ${branch}" echo "version: ${version}" echo "commit: ${commit}" #同步代碼到發佈目錄 #to do #備份版本git commit echo ${commit}>/home/wos/test2/${version}.txt ;; Rollback_Pre) echo "branch: ${branch}" echo "version: ${version}" echo "commit: ${commit}" #同步代碼到發佈目錄 #to do ;; Rollback_Real) echo "branch: ${branch}" echo "version: ${version}" echo "commit: ${commit}" #同步代碼到發佈目錄 #to do ;; *) exit ;; esac
二、進行回滾服務器
case $deploy_evn in Rollback_Pre) url="$pre_version" ;; Rollback_Real) url="$real_version" ;; *) exit ;; esac model="$deploy_evn" projectName=`echo "$url"|awk -F '/' '{print $6}'` rollbackID=`echo "$url"|awk -F '/' '{print $7}'` #獲取回滾GIT_COMMIT commit=$(cat /home/wos/test2/${rollbackID}.txt) #進入備份目錄 cd /home/wos/test3/WOS_Portal/ #下載最新代碼 git clone http://username:password@git.wondershare.cn/CPStudio/WOS_Portal.git #本地回滾代碼 git reset --hard ${commit} #回滾代碼到WEB服務器 /bin/sh /usr/local/rsync/portal/portal.sh $model $rollbackID