【Jenkins】Jenkins集成Android全自動參數(shù)化打包專題

1 集成步驟

1.1 遠程節(jié)點連接

Mac Slave節(jié)點上建立連接用腳本

java -jar slave.jar -jnlpUrl http://192.168.23.13:8080/jenkins/computer/IOS_Node/slave-agent.jnlp -secret62b5dc021bbf90e8207057760bf71fae93867c154add3963e5f9c3befee2df06


Windows平臺Jenkins連接MacSlave節(jié)點上建立連接用腳本

java -jar agent.jar -jnlpUrl?http://192.168.23.34:8080/jenkins/computer/IOS_Node/slave-agent.jnlp

-secret 62b5dc021bbf90e8207057760bf71fae93867c154add3963e5f9c3befee2df06


Mac平臺Jenkins連接WindowsSlave節(jié)點上建立連接用腳本

打開cmd命令行窗口,輸入如下命令:

Cmd C:\Users\hjdev\.jenkins

java -jar?agent.jar?-jnlpUrl http://192.168.23.34:8080/computer/Android_Dev/slave-agent.jnlp -secret de88da611ce63c67a07d13083e38b6e44d0547d84ff706802c4c54c8a09d7c3d -workDir "C:\Users\hjdev\.jenkins"

1.2 參數(shù)化構(gòu)建

(Good)利用Jenkins玩轉(zhuǎn)Android自動打包發(fā)包

http://blog.csdn.net/mabeijianxi/article/details/52680283

Jenkins參數(shù)化構(gòu)建

https://www.cnblogs.com/meitian/p/5492457.html

Jenkins參數(shù)化構(gòu)建android項目

http://blog.csdn.net/u012400222/article/details/78232402


參數(shù)化構(gòu)建build.gradle樣例:

https://github.com/mabeijianxi/android-automation/blob/master/build.gradle

參數(shù)化構(gòu)建gradle.properties樣例

https://github.com/mabeijianxi/android-automation/blob/master/gradle.properties

1.2.1 7zip壓縮命令

"C:\Program Files\7-Zip\7z.exe" a "C:\Users\hjdev\.jenkins\workspace\Android_Dis\m.zip" "C:\Users\hjdev\.jenkins\workspace\Android_Dis\www"

1.2.2 xcopy命令

xcopy C:\Users\hjdev\.jenkins\workspace\androidXML\xml C:\Users\hjdev\.jenkins\workspace\Android_Dis\app\src\main\res\xml /e/R /Y

1.2.3 copy命令

copy "C:\Users\hjdev\.jenkins\Android_Dis\m.zip" "C:\Users\hjdev\.jenkins\Android_Dis\app\src\main\assets" -Y

1.3 自動發(fā)布腳本

在Windows下使用curl命令

https://www.2cto.com/os/201205/131164.html

使用 Jenkins 插件上傳應(yīng)用到蒲公英

https://www.pgyer.com/doc/view/jenkins_plugin

使用Jenkins實現(xiàn)持續(xù)集成(Android)并上傳蒲公英

https://www.pgyer.com/doc/view/jenkins

curl -F "file=@\app\build\outputs\apk\app-dev.apk" -F "uKey=05cac798537b5f0bd0fb3fda30b66751" -F "_api_key=d25e340391b092101d8810c328c125ee" http://www.pgyer.com/apiv1/app/upload

1.4 定時構(gòu)建

1.4.1 定時構(gòu)建語法

????* * * * *

? ? ? ? ? ? 第一個*表示分鐘,取值0~59

??????????? 第二個*表示小時,取值0~23

??????????? 第三個*表示一個月的第幾天,取值1~31

??????????? 第四個*表示第幾月,取值1~12

??????????? 第五個*表示一周中的第幾天,取值0~7,其中0和7代表的都是周日

1.4.2 常用定時構(gòu)建舉例

??由于項目的代碼一般存在放SVN中,而一個SVN往往是有多個項目組在提交代碼,而每個項目組又有多人組成,其中每個人也都在對自己的那塊代碼不停地在進行維護,所以說對于一個公司而言,SVN的提交記錄往往是很頻繁的,正因為如此,Jenkins在執(zhí)行自動化構(gòu)建時往往是以天為單位來執(zhí)行的,下面舉的例子就是在一天中常用的定時構(gòu)建示例。

????每隔5分鐘構(gòu)建一次????????????????????????????? H/5 * * * *

????每兩小時構(gòu)建一次??????????????????????????????? H H/2 * * *

????每天中午下班前定時構(gòu)建一次?????????????? 0 12 * * *?

????每天下午下班前定時構(gòu)建一次?????????????? 0 18 * * *

1.4.3 定時構(gòu)建設(shè)置

??在Jenkins的主頁面中,點擊構(gòu)建的項目,如下圖所示:

??在project-parent頁面,點擊左側(cè)的【配置】按鈕,進入項目配置頁面

??在【配置】頁面中,下拉到【構(gòu)建觸發(fā)器】,在這里有兩個可選選項,分別是“Buildperiodically”和“Poll SCM”,它們的特點如下:

??????????? Build?periodically

??無論SVN中數(shù)據(jù)有無變化,均執(zhí)行定時化的構(gòu)建任務(wù)

??????????? Poll SCM

??定時輪詢SVN,查看SVN中是否有數(shù)據(jù)變化,如果有變化,則執(zhí)行構(gòu)建任務(wù)

??至于上面兩種情況,到底怎么選,亦或是組合在一起,都是看項目的需要,按照項目的需求進行配置。

2 參考鏈接

利用Jenkins玩轉(zhuǎn)Android自動打包發(fā)包

http://blog.csdn.net/mabeijianxi/article/details/52680283


兩種常見掛載Jenkins slave節(jié)點的方法

http://blog.csdn.net/liuchunming033/article/details/52025541


Jenkins Master,Slave使用問題匯總及解決方案

http://blog.csdn.net/achang21/article/details/45153199


linux jenkins添加windows節(jié)點,實現(xiàn)自動化部署

http://blog.csdn.net/yfx000/article/details/52023654


Jenkins使用教程之管理節(jié)點

http://www.itdecent.cn/p/047362b11403


Jenkins Windows slave節(jié)點部署

http://blog.csdn.net/hifour/article/details/69374837


Jenkins?為Jenkins添加Windows?Slave遠程執(zhí)行python項目腳本

http://blog.sina.com.cn/s/blog_13cc013b50102w1yr.html


【Jenkins】Jenkins配置從節(jié)點,實現(xiàn)遠程主機調(diào)用功能

https://www.cnblogs.com/MrCandy/p/6758956.html


[原]Jenkins(一)---我理解的jenkins是這樣的

[原]Jenkins(二)---jenkins之Git+maven+jdk+tomcat

[原]Jenkins(三)---Jenkins初始配置和插件配置

[原]Jenkins(四)---Jenkins添加密鑰對

[原]jenkins(五)---jenkins添加項目

[原]jenkins(六)---jenkins遠程部署腳本

[原]Jenkins(七)---jenkins項目編譯測試發(fā)布由maven構(gòu)建的web項目

[原]Jenkins(八)---jenkins構(gòu)建項目報錯時發(fā)送錯誤報告郵件

[原]Jenkins(九)---jenkins分別發(fā)布多個項目到多個遠程主機

[原]Jenkins(十)---jenkins注冊管理員admin并賦所有權(quán)限給admin

[原]Jenkins(十一)---jenkins使用管理員admin創(chuàng)建用戶和分配權(quán)限

[原]Jenkins(十二)---jenkins管理員用戶無法登陸解決辦法Access Denied

[原]Jenkins(十三)---jenkins用戶權(quán)限管理

[原]Jenkins(十四)---jenkins示例:admin管理所有項目,新建用戶只能看部分項目

[原]Jenkins(十五)---jenkins插件之deploy


jenkins配置從節(jié)點

https://www.cnblogs.com/jsonhc/p/7372359.html


[原]Jenkins(九)---jenkins分別發(fā)布多個項目到多個遠程主機

https://www.cnblogs.com/horizonli/p/5336098.html


Windows中的COPY、XCOPY和MOVE覆蓋功能發(fā)生更改

https://support.microsoft.com/zh-cn/help/240268/copy--xcopy--and-move-overwrite-functionality-changes-in-windows


windows復(fù)制文件夾命令xcopy

http://blog.csdn.net/mfkjq/article/details/69230369


windows copy命令詳解

http://blog.csdn.net/u011334738/article/details/24602883


Jenkins之定時構(gòu)建

http://blog.csdn.net/zzy1078689276/article/details/77520441

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容