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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Jenkins实现Android自动化打包

發(fā)布時間:2024/9/30 Android 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Jenkins实现Android自动化打包 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

轉載請標明出處:http://blog.csdn.net/zhaoyanjun6/article/details/77102359
本文出自【趙彥軍的博客】

文章目錄

    • 更新1 :brew 命令
    • 更新2:局域網(wǎng)訪問
    • 1、Tomcat
    • 2、Jenkins 部署到 Tomcat
    • 3、填寫 Jenkins 超級管理員密碼
    • 4、Jenkins 插件安裝和超級管理員配置
    • 5、創(chuàng)建任務
    • 6、項目倉庫配置
    • 7、Jenkins 全局配置
    • 8、創(chuàng)建 Jenkins 構建任務
    • 9、執(zhí)行構建任務
    • 10、構建結果
    • 11、構建后操作
      • 構建結果發(fā)布到 fir 平臺
      • 構建結果通知釘釘
    • 12、構建觸發(fā)器
    • 13、常用的jenkins 插件
      • Rebuilder
      • Upload to pgyer 蒲公英
      • Git Parameter

2021年五一結束了,繼續(xù)投入戰(zhàn)斗

更新:最近項目需要重新搭建了一次 Jenkins , 使用的機器的 MacOs ,在搭建的過程中,發(fā)現(xiàn)了一些不一樣的操作,記錄一下:

更新1 :brew 命令

macos 安裝 Jenkins 和 CenterOS 不一樣,macos 使用的命令行安裝 ,使用 brew 命令
地址:https://www.jenkins.io/download/lts/macos/

使用的 brew 命令安裝,所以在安裝 jenkins 之前要確保你的機器上已經安裝好了 brew 工具。
安裝 brew 教程如下:
mac安裝brew0-親測 https://blog.csdn.net/yuanshangshenghuo/article/details/106599836

更新2:局域網(wǎng)訪問

安裝完成后,默認可以使用 http://localhost:8080/訪問,別人是無法通過 ip 進行局域網(wǎng)訪問的,解決如下:
【Jenkins】使用brew安裝jenkins并配置局域網(wǎng)IP訪問


正文如下

1、Tomcat

進入 https://tomcat.apache.org/ 官網(wǎng),下載最新的 tomcat 安裝包并且安裝。

安裝完成后,啟動 tomcat 后,在瀏覽器中輸入 http://localhost:8080/ , 如果看到下面的界面,那么tomcat 就安裝配置好了。

2、Jenkins 部署到 Tomcat

進入jenkins 的官網(wǎng) https://jenkins.io/ , 根據(jù)你搭建平臺的不同,下載 jenkins war 包 ,我們這里用 windows 平臺做演示。

war 包如下圖所示

把 war 包放在 tomcat 的 webapps 目錄下,如下圖所示:

然后在瀏覽器中訪問 : http://localhost:8080/jenkins/ , 你將會看到如下界面 , 代表 Jenkins 已經部署完成了,下一步安裝 Jenkins.

3、填寫 Jenkins 超級管理員密碼

在上圖的輸入框內要輸入超級管理員權限的密碼,這個 密碼在紅色路徑的文件里 ,輸入密碼后,點擊 continue , 如下圖所示:

4、Jenkins 插件安裝和超級管理員配置

填寫完密碼后,將會看到插件安裝界面

我們選擇第一項,安裝默認Jenkins插件。安裝插件過程如下圖所示:

等所有的插件都安裝完成,我們將會看到用戶名設置界面。

這個界面你有兩個選擇可以操作,

  • 選擇一:直接點擊 Continue as Admin 安裝,默認此時的超級管理員為 admin .

  • 選擇二:輸入用戶名,密碼,確認密碼,全名,電子郵件地址。然后點擊 Save and Finish . 注意你輸入的用戶名就是 Jenkins 的超級管理員。需要注意的是,上面的每一項都需要填寫,否則點擊 Save and Finish 按鈕沒有效果。

等上面的步驟都操作完畢,你將會看到如下界面,代表 Jenkins 的插件安裝和超級管理員已經配置好了。

5、創(chuàng)建任務

點擊創(chuàng)建一個新的任務,如下圖所示:

6、項目倉庫配置

1、選擇源碼管理工具,Git 或者 Subversion . 下面我們的演示選擇 Git.
2、填寫 Git 倉庫地址
3、選擇 Git 證書憑證, 如果沒有創(chuàng)建過證書,顯示 none , 可以點擊右邊的 Add 按鈕添加一個證書憑證。
4、添加證書憑證,添加的方法詳見下面的圖。
5、選擇 Git 倉庫的分支
6、源碼瀏覽器,Git 有很多管理器,我們這里選擇自動就好了。

  • 添加證書

從 Git 上拉取代碼,有兩種方式:用戶名+密碼、SSH . 根據(jù)自己的需要選擇。

填寫 Git 倉庫的用戶名和密碼

7、Jenkins 全局配置

JDK 和 Gradle 配置

由于Android 是基于 java 的,我們需要配置 JDK;由于我們用 Gradle 構建Android 項目,我們需要設置 Gradle 的環(huán)境 。

在 系統(tǒng)管理 --> Global Tool Configuration

**Android SDK 配置 **

系統(tǒng)管理 --> 系統(tǒng)設置 – 全局屬性

在 Environment variables 里面增加一個鍵值對.
鍵:ANDROID_HOME
值:SDK 路徑

8、創(chuàng)建 Jenkins 構建任務

1、代表配置的項目
2、構建模塊
3、選擇 Gradle 構建工具的版本號,可以選擇默認構建版本號,也可以選擇自己自定的版本號。
4、填寫 Gradle 構建任務

  • 打 release 包
app:clean app:assembleRelease

解釋:

app:clean : 清除....../app目錄下的build文件夾 app:assembleRelease : 編譯并打Release的包
  • 打 debug 包
app:clean app:assembleDebug

解釋:

app:clean : 清除....../app目錄下的build文件夾 app:assembleDebug: 編譯并打Debug的包
  • 同時打 debug 包和 release 包
app:clean app:assembleDebug app:assembleRelease

9、執(zhí)行構建任務

點擊立即構建按鈕,開始執(zhí)行構建任務。

- 【1】、點擊立即構建,開始執(zhí)行構建任務 - 【2】、進度條,表示正在構建的項目。 - 【3】、藍色的圖標表示構建成功 - 【4】、紅色的圖標表示構建失敗

動圖演示如下圖所示:

點擊正在構建的條目,可以進入正在構建的信息。

  • 狀態(tài)集:構建人用戶名、構建git 節(jié)點

  • 變更記錄:

  • Console Output:構建過程中的輸出控制臺,會輸出構建過程中的詳細信息,這個功能很重要,如果構建失敗,可以從這里找到錯誤的原因。

  • 編輯編譯信息:每次構建任務的時候,構建名字是數(shù)字形式疊加,這里可以自定義構建任務的名字。

  • Git Build Data:本次構建 Git 倉庫的相關信息。

10、構建結果

在 Console Output 面板中,出現(xiàn)了 BUILD SUCCESSFUL , 代表任務構建成功。

11、構建后操作

構建結果發(fā)布到 fir 平臺

fir 是國內提供測試應用極速發(fā)布,應用崩潰實時分析、用戶反饋收集等一系列開發(fā)測試效率工具服務,幫助開發(fā)者將更多精力放在產品的開發(fā)與應用的優(yōu)化上。

官網(wǎng): https://fir.im/

登錄后,在 fir 官網(wǎng)的個人資料中, 可以找到 API Token , 這個 token 我們在后面會用到。

fir.im Jenkins 插件使用方法: http://blog.fir.im/jenkins/

下載插件

Jenkins 構建完成后,生成的 apk 文件,我們通過插件的方式上傳到 fir . 通過上面的連接,我們下載 Jenkins 的 fir 插件到本地。

安裝插件

系統(tǒng)管理 --> 插件管理 --> 高級 --> 上傳插件

使用插件

配置 --> 構建后操作 --> 增加構建后操作步驟 --> Upload to fir.im

填寫 API Token

構建結果

通過日志看到上傳 fir 成功。

構建結果通知釘釘

釘釘,阿里巴巴出品,專為中國企業(yè)打造的免費智能移動辦公平臺。

  • 第一步:創(chuàng)建釘釘群聊機器人

選擇自定義機器人

點擊添加

輸入機器人的名字

復制 Hook 地址

  • 第二步:Jenkins 后臺添加釘釘插件

  • 第三步:添加構建后操作

  • 第四步:添加釘釘插件參數(shù)

總結

到這里關于 Jenkins 的自動化打包的主要內容已經介紹完了。下面將會介紹一些附加的操作,能夠更好的使用 Jenkins .

12、構建觸發(fā)器

在上面部分我們發(fā)起構建的命令是點擊 立即構建 的按鈕,Jenkins 里面有構建觸發(fā)器的方式,提供遠程構建任務。

  • 1、觸發(fā)遠程構建 (例如,使用腳本):填入身份驗證令牌,可以隨便填寫,我們這里填入 123456 , 填寫完成后,在輸入框的下方有提醒
Use the following URL to trigger build remotely: JENKINS_URL/job/AppTest/build?token=TOKEN_NAME 或者 /buildWithParameters?token=TOKEN_NAME Optionally append &cause=Cause+Text to provide text that will be included in the recorded build cause.

根據(jù)提示,我們自瀏覽器中訪問地址: http://127.0.0.1:9999/jenkins/job/AppTest/build?token=123456 , 這樣就可以觸發(fā)構建任務。

  • 2、Build after other projects are built : 在其他任務結束后,開始本次構建任務。

示例:在 AppTest1 項目構建成功后,開始本次構建任務。

①Trigger only if build is stable:其他項目構建成功
②Trigger even if the build is unstable:其他項目不穩(wěn)定
③Trigger even if the build fails:其他項目構建失敗

  • Build periodically:周期進行構建(它不關心源碼是否發(fā)生變化)

日程表:

H 2 * * * //每天凌晨2天構建H 16 * * * //每天下午4點構建,16 代表下午4點0 16 15 * * //每個月15號下午4點構建,15代表天,16代表下午4點,0代表0分鐘H 6,12,18 * * * //每天的 6時,12時,下午6時構建15,30,45 * * * * //每個小時 15分,30分,45分 發(fā)起構建* * * 1,3,5,7,9 * //每年的1, 3,5,7,9 月發(fā)起構建

示例:

注意

1、在日程表中,# 可以代表注釋,但是需要單獨寫一行。

2、官方日程表語法:https://en.wikipedia.org/wiki/Cron#CRON_expression

3、日程表的語法字段遵循cron的語法(略有不同)。 具體來說,每行由5個由TAB或空格分隔的字段組成:MINUTE HOUR DAY MONTH WEEK

4、時間順序和: MINUTE (0-59), HOUR (0-23), DAY (1-31), MONTH (1-12), DAY OF THE WEEK (0-7)

其他的日程表:

30 08 * * 1-6 //周一至周六 早上08:30開始構建,最后一個字段是 WEEK ,1-6 代表周一到周五,0 代表周日00 0,12 * * 0-5 //周日到周五,每天建成兩次,中午12:00和午夜00:00H 16 * * 1-5 //工作日 下午4點左右開始每天開始建設,構建時間 16:00 -16:59,具體的時間取決于項目哈希:
  • GitHub hook trigger for GITScm polling:hookplugin 檢測到源碼的 push 操作觸發(fā)構建 , 感覺Poll SCM 更方便些,如果提交頻繁,則這個觸發(fā)就會頻繁,看業(yè)務需要設置。

  • Poll SCM : 定時檢查源碼變更(根據(jù)SCM軟件的版本號),如果有更新就 checkout 最新code下來,然后執(zhí)行構建動作。

日程表示例:

H/5 * * * * //每5分鐘檢查一次H/60 * * * * //每1個小時檢查一次H H/2 * * * //每2個小時檢查一次H * H/10 * * //每10天檢查一次H * * H/3 * //每3個月檢查一次H * * * 1 //每一周檢查一次

示例:

13、常用的jenkins 插件

Rebuilder

功能說明:此插件可以直接重復上次構建,也可以用于查看一些參數(shù)比較復雜的構建時,上次構建所選的參數(shù)是什么。非常nice的一個插件。

地址:https://plugins.jenkins.io/rebuild/

Upload to pgyer 蒲公英

地址:https://plugins.jenkins.io/upload-pgyer/

Git Parameter

地址:https://plugins.jenkins.io/git-parameter/


個人微信號:zhaoyanjun125 , 歡迎關注
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-1T6dlIuH-1620476426908)(http://o7rvuansr.bkt.clouddn.com/weixin200.jpg)]

總結

以上是生活随笔為你收集整理的Jenkins实现Android自动化打包的全部內容,希望文章能夠幫你解決所遇到的問題。

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