jenkins配置git和maven


  先把總體流程梳理一下:

         +-------------git:拉取最新提交代碼,分支可指定,放在jenkins工作空間,如:/var/lib/jenkins/workspace

                    |

       +-------------maven:打包,從jenkins工作空間上按pom.xml執行配置的maven命令,如:clean install XXX

     jenkins-------|                      |

          |        +-------------nexus:settings.xml指定maven私服,去nexus上拉取依賴構件

                         +------------Publish Over SSH:配置運行用戶,如:springCloudGateway,打包完上傳到用戶根目錄

                          |

                         +------------bootstrap.sh:啟動腳本,將上傳的jar包跑起來

  第一步:先把插件裝好。進入之前搭建的jenkins(jenkins安裝參見centos6.9安裝jenkins最新穩定版2.249.2 )界面,點擊左上角的Jenkins圖標,提示安裝默認插件。我看有一些是我需要的,比如git插件,我就點了確定,結果自動給我安裝了一堆插件,包括翻譯。重新左上角圖標,提示設置jenkins的URL:

 

  自動提示了jenkins的URL的ip和端口,點擊確定后進入歡迎頁,這里不用管它:

 

 

   

  如果有些插件還沒有安裝,可以確認一下,點開插件管理:

 

 

 

  點擊“已安裝”,我們看下有沒有maven插件,在輸入框中敲“maven”,搜不到maven:

 

 

    

  所以還得再裝一下maven插件,點擊可選插件,搜“maven”,勾選“Maven Integration”,點“直接安裝”:

 

 

 

 

 

   同樣的,裝一個Publish Over SSH插件,用來通過ssh命令發送maven的構建:

 

 

 

  第二步:配置全局變量,添加我們要部署的用戶springCloudGateway:

 

 

 

  點“Configure System”后,拉到最下面,在SSH Servers這里點擊新增:

 

 

 

   去新建個用戶:

[root@VM-0-14-centos ~]# useradd springCloudGateway
[root@VM-0-14-centos ~]# passwd springCloudGateway

  再回來配置一下:

 

 

   點一下“高級”,把密碼也配置好:

 

 

   最后點擊保存,記得點“Test Configuration”測試一下能否連通springCloudGateway環境:

 

 

  另外把mavne的jenkins本地倉庫也設置一下:

 

 

 

  第三步:全局工具配置,點擊Manage Jenkins -> Global Tool Configuration:

 

 

   

  3.1 設置maven的setting文件,使用之前安裝的maven3.6.3的配置(安裝參見centos6.9安裝maven3.6.3 ):

 

  

 

   3.2 設置JDK1.8家目錄:

 

  

   

  3.3 設置git執行腳本路徑(安裝參見centos6.9搭建git1.7.1 ):

 

 

 

  3.4 設置maven安裝路徑:

 

 

 

 

  第四步:前面都是鋪墊,現在才是關鍵——創建新任務:

 

 

 

  4.1 輸入任務名稱,選擇Maven項目,點擊“確定”:

 

 

   4.2 配置源碼,把之前spring-cloud-gateway的git clone連接復制過來即可:

 

 

 

  因為我們沒有把jenkins的公鑰加入到git倉庫的authorized_keys文件中,需要整一下:

[root@VM-0-14-centos jenkins]# ssh -keygen
Bad escape character 'ygen'.
[root@VM-0-14-centos jenkins]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
4b:d8:9f:2c:19:e6:c7:71:e8:e2:5d:10:16:11:9b:25 root@VM-0-14-centos
The key's randomart image is:
+--[ RSA 2048]----+
|          Eo.    |
|           *     |
|          =      |
|       o . o     |
|      . S + .    |
|       + O =     |
|        * B .    |
|       . = .     |
|        . .      |
+-----------------+
[root@VM-0-14-centos jenkins]# cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA5LemBOUc1P5duv9ArXRzzehmHJnTaUdEy+FwDWDTLa1YSwE9I2O2y8oUAYSlbHa7Fas7ZqLJ+amg7zb6nq3WiBGPnhd+O7+ALvTnkF+a05x51YBqZlj0jr+m+wgXOrKKm9qQaVflAMAas6Q1K4cQBVSgy0oqE5RWffv7yKjoV02n2D7R8/0YtVpkaTYQjTaorxcHHQB9qTDSkRETzC4fXclXVUEJqZjzSrjIspyhRnHXx+XgQqeCxA8ziwMgkRmPcPmrh8UMLE3wBkB+fu3BAIsw6kkT0snYovBFQN2vLxi0AKkzL01bvn5xIVY7bQxLFNfgrYtmRsJxkNQ9rDs/2Q== root@VM-0-14-centos

  上面的公鑰是在root用戶下生成的,復制“ssh-ras...",寫入到git用戶下的authorized_keys:

[root@VM-0-14-centos jenkins]# vi /home/git/.ssh/authorized_keys

  刷新界面,報錯提示消失了:

 

 

   4.3 構建環境這里打鈎,加上時間戳:

 

 

   4.4 配置預處理:

 

 

 

  用戶選擇我們之前在第2步配置的springCloudGateway,在啟動前執行一下停止腳本:

 

  

 

  上面紅框框里的腳本詳情:

sh ./bootstrap.sh ./spring-cloud-gateway-0.0.1-SNAPSHOT.jar stop
rm -rf ./spring-cloud-gateway-0.0.1-SNAPSHOT.jar

 

 

  4.5 配置maven執行腳本:

 

 

   

  4.6 配置后處理:

  

   4.7 配置啟動腳本的執行命令:

 

 

 

 

 

   最后點擊保存,可以准備執行jenkins構建任務了:

 

   查看構建日志:

 

 

 

 

 

 

 

 

 

 

 

 

  


免責聲明!

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



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