日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Jenkins非常详细的教程四(钩子程序,定时构建实现)

發(fā)布時間:2024/8/1 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Jenkins非常详细的教程四(钩子程序,定时构建实现) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Jenkins教程四

  • 前言
    • Jenkins其余博客地址
    • Tomcat刪除Jenkins步驟
  • 鉤子程序
    • 遠(yuǎn)程觸發(fā)Jenkins構(gòu)建
    • Linux 的curl 命令
    • SVN鉤子程序
      • 步驟:
      • 操作:
      • 測試
      • 補(bǔ)充
  • 定時設(shè)置
    • Jenkins定時設(shè)置示例
    • 定時設(shè)置規(guī)則

前言

Jenkins其余博客地址

當(dāng)前博客為Jenkins終篇,建議看一次之前介紹的內(nèi)容。對其會有更加深刻的體驗,整個Jenkins知識點非常清晰,每一步都有截圖內(nèi)容,方便大家手動操作

Jenkins入門一(簡介,安裝,初始化)

Jenkins入門二(配置Maven,Svn)

Jenkins入門三(構(gòu)建,部署項目)


Tomcat刪除Jenkins步驟

首先刪除Tomcat上部署的Jenkins是因為,我用了其他人給的Jenkins.war包。初始化Jenkins時因為版本原因?qū)е虏寮惭b不成功,后續(xù)為了省事直接將之前的額信息全部刪除,下載最新的War包重新使用

  • 關(guān)閉tomcat:./shutdown.sh
  • 刪除/webapps/jenkins下所有文件:rm -rf jenkins
  • 刪除配置文件:rm -rf /root/.jenkins/
  • 把名稱為jenkins的文件夾都刪除了。find / -iname jenkins | xargs -n 1000 rm -rf
  • 1. ./shutdown.sh 2. cd webapps 3. rm -rf jenkins 4. rm -rf jenkins.war 5. rm -rf /root/.jenkins/ 6. find / -iname jenkins | xargs -n 1000 rm -rf

    鉤子程序

    遠(yuǎn)程觸發(fā)Jenkins構(gòu)建

    這一塊的內(nèi)容我在上一篇博客中也有講述,為了整體的連貫性在這里在粘貼了一份,如果看過這塊的內(nèi)容直接看 鉤子程序觸發(fā)構(gòu)建即可。

    首先進(jìn)入apple項目的頁面,進(jìn)入配置,選擇 構(gòu)建觸發(fā)器。勾選觸發(fā)遠(yuǎn)程構(gòu)建。
    可以看到Jenkins還提供了定時構(gòu)建等等的策略

    配置結(jié)束后,不要忘記點擊保存按鈕哎



    最終的訪問路徑:http://192.168.20.128:8080/jenkins/job/apple/build?token=zhzhouq 此時就不是我們手動點擊構(gòu)建了,而是通過瀏覽器訪問的url地址觸發(fā)Jenkins執(zhí)行構(gòu)建程序。


    Linux 的curl 命令

    Linux 的curl 命令用來發(fā)送HTTP 請求。
    -X 參數(shù):指定請求方式
    -v 參數(shù):顯示響應(yīng)結(jié)果
    -u 參數(shù):攜帶用戶名/密碼
    -H 參數(shù):攜帶請求消息頭信息

    curl -X post -v -u [Jenkins 用戶名]:[Jenkins 密碼] -H "請求消息頭信息" http://[服務(wù)器IP 地址]:[服務(wù)器端口號]/jenkins/job/[Jenkins 項目名稱]/build?token=[身份驗證令牌] # 解析這個命令 curl :固定格式 -X post :post請求方式 -v:顯示響應(yīng)結(jié)果 -u:[Jenkins 用戶名]:[Jenkins 密碼] -H:[請求頭信息] 至于接下來的內(nèi)容就是我們遠(yuǎn)程通過瀏覽器訪問觸發(fā)Jenkins構(gòu)建的那個地址

    而整合起來的這么一串代碼,是需要配置在SVN提供的鉤子程序文件中的


    SVN鉤子程序

    步驟:

  • 鉤子程序由svn生成的 post-commit.tmpl 文件復(fù)制得到,這里注意不要使用任何擴(kuò)展名。如果按照我們習(xí)慣的使用.sh 擴(kuò)展名則鉤子程序無法正常工作。
  • 使用chmod 命令設(shè)置為可執(zhí)行權(quán)限
  • 把原有內(nèi)容注釋,加入curl 命令

  • 操作:

    1. 復(fù)制鉤子程序
    進(jìn)入SVN服務(wù)器上當(dāng)前項目倉庫的位置,進(jìn)入hooks目錄,復(fù)制一份post-commit.tmpl 文件,不要攜帶后綴名:post-commit


    2. 授權(quán)
    chmod 777 post-commit


    3. 編輯復(fù)制的文件
    按照上述的要求先獲取 admin的密碼值為:2934fc74122141cc98ef7d24a9a9e6d7

    命令匯總

    # 復(fù)制鉤子程序 cd /var/svn/workspace/jenkins cd hooks cp post-commit.tmpl post-commit# 獲取admin用戶密碼 cd /root/.jenkins/secrets vi initialAdminPassword# 編輯post-commit文件 vim post-commit# 加入以下內(nèi)容,隨著自己設(shè)置的不同值進(jìn)行一個修改 curl -X post -v -u admin:2934fc74122141cc98ef7d24a9a9e6d7 http://192.168.20.128:8080/jenkins/job/apple/build?token=zhzhouq

    測試

    進(jìn)入eclipse,修改文件內(nèi)容進(jìn)行提交。會發(fā)現(xiàn)此時已經(jīng)觸發(fā)了Jenkins進(jìn)行構(gòu)建

    通過瀏覽器,訪問項目內(nèi)容:

    從tomcat上webapps目錄下的war包修改時間也能體現(xiàn)出來


    補(bǔ)充

    如果Jenkins 服務(wù)器從SVN 服務(wù)器下載代碼不是最新版的情況,(也就是我代碼提交之后沒有生效,當(dāng)我再次提交的時候上一次提交的才會生效)遇到這種有時間差,或者代碼版本差異的情況下,那么就在SVN服務(wù)器的URL 地址后面加上@HEAD 強(qiáng)制要求下載最新版。如圖:


    定時設(shè)置

    Jenkins定時設(shè)置示例

    進(jìn)入Jenkins首頁,選擇我們的apple任務(wù),點擊構(gòu)建觸發(fā)器,勾選Build periodically
    設(shè)置定時構(gòu)建的規(guī)則,下圖中的意思為 每2分鐘執(zhí)行一次。

    定時設(shè)置規(guī)則

    常用規(guī)則示例:

    每隔5分鐘構(gòu)建一次 H/5 * * * *每兩小時構(gòu)建一次 H H/2 * * *每天中午12點定時構(gòu)建一次 H 12 * * *每天下午18點定時構(gòu)建一次 H 18 * * *在每個小時的前半個小時內(nèi)的每10分鐘 H(0-29)/10 * * * *每兩小時45分鐘,從上午9:45開始,每天下午3:45結(jié)束 45 9-16/2 * * 1-5每兩小時一次,每個工作日上午9點到下午5點(也許是上午10:38,下午12:38,下午2:38,下午4:38) H H(9-16)/2 * * 1-5

    總結(jié)

    以上是生活随笔為你收集整理的Jenkins非常详细的教程四(钩子程序,定时构建实现)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。