成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

Jenkins持續(xù)集成——參數(shù)化構(gòu)建-創(chuàng)新互聯(lián)

一、String Parameter

由于每次構(gòu)建的時候指定的SVN路徑都不同,如果不使用參數(shù)化構(gòu)建則每次都需要修改配置中的SVN路徑,不但不安全也容易出現(xiàn)錯誤。

成都網(wǎng)站制作、網(wǎng)站設(shè)計服務(wù)團隊是一支充滿著熱情的團隊,執(zhí)著、敏銳、追求更好,是創(chuàng)新互聯(lián)的標(biāo)準(zhǔn)與要求,同時竭誠為客戶提供服務(wù)是我們的理念。創(chuàng)新互聯(lián)把每個網(wǎng)站當(dāng)做一個產(chǎn)品來開發(fā),精雕細琢,追求一名工匠心中的細致,我們更用心!

將SVN地址設(shè)置為字符串參數(shù)(string parameter),當(dāng)開始構(gòu)建的時候?qū)崾居脩糨斎雲(yún)?shù)值(即:SVN地址)

Jenkins持續(xù)集成——參數(shù)化構(gòu)建

在SVN中引用參數(shù)

Jenkins持續(xù)集成——參數(shù)化構(gòu)建

另外,如果需要自動拉取SVN的tag或git的branch可以使用"List Subversion tags(and more)"和"Git Parameter Plug-In"這兩個插件,將會自動在所填的SVN/git地址下列出子目錄,有興趣的朋友可以自己研究一下。

當(dāng)執(zhí)行構(gòu)建時,將會彈出頁面等待用戶輸入?yún)?shù)值完成構(gòu)建

Jenkins持續(xù)集成——參數(shù)化構(gòu)建

二、Choice

由于之前未對tomcat的狀態(tài)檢測做參數(shù)化構(gòu)建,故每個模塊都需要一個對應(yīng)的job用于檢測,最終將會導(dǎo)致所創(chuàng)建的job數(shù)量太大,不但增加了工作量,而且也容易出錯。

以下將通過參數(shù)化構(gòu)建將其合并為一個Tomcat_check的job。

合并前:

Jenkins持續(xù)集成——參數(shù)化構(gòu)建

合并后:

Jenkins持續(xù)集成——參數(shù)化構(gòu)建

勾選配置參數(shù)化構(gòu)建過程(選擇"Chice"并定義參數(shù)名為Module,Choices的值根據(jù)自己的情況填寫需要的選項)

Jenkins持續(xù)集成——參數(shù)化構(gòu)建

構(gòu)建過程(執(zhí)行check.sh腳本并引用參數(shù)Module

Jenkins持續(xù)集成——參數(shù)化構(gòu)建

觸發(fā)郵件步驟略(將會在郵件插件中詳細介紹)


以下附上檢測tomcat的腳本(僅供參考)

Tomcat_check檢測腳本

  • 定義check函數(shù)用于檢測tomcat是否啟動正常functions

#定義失敗后重試次數(shù)
ATTEMPTS=12
FAILED=0
#定義將會輸出版本號的日志(可用于發(fā)送郵件)
file=$JENKINS_HOME/jobs/$JOB_NAME/builds/$BUILD_NUMBER/check
#jenkins構(gòu)建時生成的日志,用于追加日志輸出到j(luò)enkins控制臺
log=$JENKINS_HOME/jobs/$JOB_NAME/builds/$BUILD_NUMBER/log
check(){
    echo \<h4\> `date` >> $file
    #當(dāng)調(diào)用check函數(shù)帶參數(shù)時才執(zhí)行
    while [ $# != 0 ]
    do
        IP=`echo $1 | awk -F "/" '{print $3}' |awk -F ':' '{print $1}'`
        ver=`curl -skf -m 1 $1 |grep -i "v" |head -1|dos2unix`
        curl -skf -m 1 $1 > /dev/null
        #當(dāng)curl檢測URL返回正常時往$file記錄IP和版本號并往jenkins控制臺輸出"$1 is OK"(shift用于向左移動一位參數(shù))
        if [ $? -eq 0 ];then
            echo \<br\> \<a href=$1\>$IP\<\/a\> ++ $ver >> $file
            echo $1 is OK! >> $log
            FAILED=0
            shift
            continue
        else
            #當(dāng)curl檢測URL返回異常則等待10秒后重試
            FAILED=$(($FAILED + 1))
            TIMES=$(($ATTEMPTS - $FAILED + 1))
            echo "Waiting for check the web-$1, retrying in 10 seconds for $TIMES times..." >> $log
            sleep 10
            if [ $ATTEMPTS -gt $FAILED ];then
                continue
            else
                echo "Failed to check the web-$1" >> $log
            fi
            #若重試指定次數(shù)后仍然失敗則將版本號記錄為ERROR,且字體設(shè)為紅色
            echo \<br\> \<a href=$1\>$IP\<\/a\> ++ \<font color='Red'\>Error\<\/font\> >> $file
            FAILED=0
            shift
            continue
        fi
    done
}

  • 通過腳本調(diào)用上面定義的check函數(shù)check.sh

#引入?yún)?shù)用于指定需要檢測的模塊(即參數(shù)化構(gòu)建中的Module)
Module=$1
#引用functions中的check函數(shù)
. /data/ztjy/functions
args=`cat /data/ztjy/$Module/url`
check $args
#提取新版本號(相對其他版本而已)
Maxver=`awk -F "+" '{print $3}' $file | grep -i v | sort |tail -1`
#提取舊版本號
Minver=`awk -F "+" '{print $3}' $file | grep -i v | sort |head -1`
#如果是新版本號則改版本號字體顯示為橙色
sed -i "s/$Maxver/ <font color='Orange'>$Maxver<\/font>/g" $file
#如果是舊版本號則改版本號字體顯示為綠色
sed -i "s/$Minver/ <font color='SeaGreen'>$Minver<\/font>/g" $file

  • 執(zhí)行參數(shù)化構(gòu)建

Jenkins持續(xù)集成——參數(shù)化構(gòu)建

Jenkins持續(xù)集成——參數(shù)化構(gòu)建

由上面可見檢測后將自動觸發(fā)郵件通知,郵件內(nèi)容如下:

Jenkins持續(xù)集成——參數(shù)化構(gòu)建

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

本文標(biāo)題:Jenkins持續(xù)集成——參數(shù)化構(gòu)建-創(chuàng)新互聯(lián)
鏈接地址:http://jinyejixie.com/article46/icehg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、企業(yè)建站、網(wǎng)站維護、靜態(tài)網(wǎng)站網(wǎng)頁設(shè)計公司、網(wǎng)站設(shè)計公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司
青海省| 陵川县| 友谊县| 溧水县| 汉沽区| 图木舒克市| 黄龙县| 香格里拉县| 神池县| 桃园市| 上高县| 进贤县| 泊头市| 阿克| 裕民县| 宜黄县| 富宁县| 婺源县| 曲阳县| 虞城县| 张家口市| 涞水县| 青州市| 巴东县| 武强县| 偏关县| 平陆县| 富阳市| 太康县| 兴仁县| 井研县| 剑阁县| 内黄县| 双牌县| 元谋县| 潜江市| 龙泉市| 吉木萨尔县| 平阳县| 塘沽区| 方城县|