1. 程式人生 > >Mac上搭建Jenkins自動打包工具帶submodule,引數傳遞,上傳到fir.im,釘釘通知

Mac上搭建Jenkins自動打包工具帶submodule,引數傳遞,上傳到fir.im,釘釘通知

1.工具下載

    1.ApacheTomcat下載:https://tomcat.apache.org/download-90.cgi 下載zip,tar。用工具或者命令tar -zxvf解壓

    2.Jenkins.war下載:https://jenkins.io/download/ 找到.war檔案下載

    3.JDK下載:http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.html

    4.Android SDK,ndk下載:安裝Android studio 通過as裡面的工具下載

2.環境配置

    1.在Mac系統的命令終端輸入 vim .bash_profile 輸入。配置SDK,NDK,gradle,JDK 環境。

     export PATH=$PATH:/Users/使用者名稱/Library/Android/sdk/platform-tools
     export PATH=$PATH:/Users/使用者名稱/Library/Android/sdk/ndk-bundle
   export PATH=$PATH:/Users/使用者名稱/.gradle/wrapper/dists/gradle-3.3-all/55gk2rcmfc6p2dg9u9ohc3hw9/gradle-3.3/bin    export PATH=$PATH:JDK路徑     對於Android專案有NDK模組的必須配置NDK環境。比如PDF模組,視訊播放模組,或者C++加密模組一般會攜帶NDK模組。因此配置NDK在這種情況下也是必須的。

3.Jenkins搭建以及配置

    1.將ApacheTomcat解壓縮,將Jenkins.war放入解壓縮的Tomcat檔案下的webapps中。

    2.給Tomcat的bin目錄下的.sh新增許可權 命令:chmod 555 *.sh。 執行./startup.sh。可以看到啟動log。再在瀏覽器中輸入localhost:8080可以看到Tomcat的歡迎頁。證明Tomcat配置好了。


    3.在瀏覽器的地址後面加上localhost:8080/jenkins/。出現Jenkins初始化的提示。Jenkins初始化後會有一個祕鑰寫在了.jenkins 檔案下。初始化完成後介面會有路徑提示,將祕鑰考入到對話方塊中進入下一步配置。


填寫完密碼後,將會看到外掛安裝介面,按照系統預設Jenkins外掛安裝就行了 。


等所有外掛安裝完成後,我們將會看到使用者名稱設定介面設定使用者名稱和密碼,最好使用者設定一個使用者名稱和密碼不然可能以後會出現不能登入的情況。等所有的步驟都操作完畢後,將會看到一個提示有“jenkins is ready!”的介面。則Jenkins的外掛和管理員已經配置好了。


      4.額外外掛配置。方法如下:

        在主頁找到:系統管理-->管理外掛-->可選外掛(available)找到

        1.git plugin。2.android lint plugin。3.Gradle Plugin 這三個外掛選擇安裝

      5.全域性配置。

4.Jenkins新建專案

1.在Jenkins中選擇新建專案


    2.選擇新建專案的型別。一般選擇構建自由風格的軟體專案夠用了。但是我這邊的Android專案帶有submodule模組於是選擇了構建一個多配製的專案。


點選確定就OK了。


4.git配置帶submodule處理

   在Jenkins主介面選擇專案。點選進入專案後點擊配置。找到配置中的原始碼管理於是出現瞭如下介面。

   1. 選擇git型別的原始碼管理。

   2. 將git的路徑填到repositories 中的RepositoryURL 中。這個步驟後需要處理.ssh祕鑰的問題。我這邊處理的是將我自己開發電腦上的.ssh祕鑰考到打包的mac電腦上。需要處理一下.ssh的訪問許可權,通過chmod 減小.ssh的訪問許可權。

   3. 設定打包用的分支。

   4.將這兩個選項勾上。submodule中的內容也會檢測更新。


5.引數傳遞1. 在General中選擇引數化構建過程。填寫動態改變的引數。並且定義三個引數 ENVIRONMENT,VERSION_TITLE,VERSION_NUMBER


2.在構建模組通過gradle命令將配置引數傳到Android專案的gradle配置中。配置如下:


網上的其他Jenkins有個選項可以傳遞引數,但是我這個版本的Jenkins沒有找到這個選項。

3.在Android 專案的gradle中配置

1.在gradle.properties中定義這幾個名字相同的變數並且寫上預設的資料


2. 如果專案的build.gradle 不是用的這個配置而是用的根目錄下的build.gradle  中的引數。可以使用如下方式傳遞引數


6.上傳到fir.im1. 下載fir.im的Jenkins外掛

2. 配置構建後的操作。

7.釘釘通知

1.配置Jenkins上的釘釘通知外掛

2.在釘釘上建一個群,在群裡開啟一個釘釘機器人獲取機器人的accesstoken。

3.在構建完成後操作步驟上配置釘釘機器人

8.新增對git分支的選擇

1.在全域性外掛管理中 新增外掛 git parameter 

2.在專案的引數構建中,選擇 git parameter 對新出現的模組新增 引數名稱 描述 選擇branch

3.在git管理中將branch選項填上 ${ 引數名稱}