git代碼提交后jenkins的構建與持續部署


一、實驗環境圖

 

 

 

 二、實驗流程

  1、git本地更新代碼后提交到git服務器。

  2、git服務器接收到代碼提交后,觸發jenkins鈎子函數。

  3、jenkins接收到鈎子函數后進行job構建。

 

三、實驗步驟

  1、gitlab服務器上創建一個倉庫。

    

  2、客戶端從git服務器拉取倉庫並進行代碼更新。

    克隆倉庫

    

    把文件更新到本地倉庫中。

    

    把本地倉庫push到gitlab倉庫。

    

 

    此時能看到gitlab的倉庫http_code上有相應的代碼文件。

    

 

   3、jenkins創建項目構建。

    1)源碼管理配置,用來配置從gitlab倉庫里拉取代碼。

       其中Repository URL為倉庫的ssh地址。

        Credentials:憑據,由於是本次連接到gitlab用的是ssh方式,因此需要用到ssh憑據,圖二是ssh憑據的配置,其中Passphrase為ssh密碼。

         注意:gitlab需要配置遠程服務器的ssh-key才能允許到gitlab上拉取代碼

           步驟:點擊個人頭像->點擊左側有個ssh keys 然后添加遠程服務器的公鑰即可。

    

    

 

    2)配置觸發構建函數。

     構建觸發器配置:

     常用有兩種:

      1)第一種:觸發url訪問構建,如圖,如果訪問http://192.168.174.129:8080/job/test/build?token=git即可觸發構建,只要保證token的值和輸入框的值一致就可。

      

      2)第二種:安裝插件gitlab,在gitlab有提交動作后,即可自動觸發任務。

       第一步:在jenkins配置如下信息,記住url和id

        

 

                             

 

 

      第二步:在gitlab上配置webhooks:

        點擊http_code倉庫的左側的點擊,然后選擇webhooks,然后鍵入上文的url以及id,點擊add webhook即可。

        

        注意:新版的gitlab可能應用添加了安全機制,無法直接配置webhook,需要做以下的配置:

          

 

  3、配置構建函數。

   

 

 

    這里我只是把拉下來的index.html文件移動到nginx目錄下。

 

    並且在構建環境中勾選Delete workspace before build starts,用來在更新時候清理原來的文件,需確認是否需要備份。

 

四、測試結果

  點擊項目立即構建。 

  然后訪問192.168.174.129

    

 

  此時我git本地客戶端修改index.html后,push到遠程倉庫,看看是否自動化完成替換。

  

  此時發現,jenkins確實能自動構建job,網頁也能自動修改。

 

 

 

 

 

 

 

 

 

 

        

 

        

 

 

 

  

 

 

 

 

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM