前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Jenkins】Jenkins集成Android全自动参数化打包专题

【Jenkins】Jenkins集成Android全自动参数化打包专题

作者头像
江中散人_Jun
发布2023-10-16 12:02:18
4010
发布2023-10-16 12:02:18
举报
文章被收录于专栏:云原生布道专栏

1 集成步骤

1.1 远程节点连接

Mac Slave节点上建立连接用脚本

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

Windows平台Jenkins连接MacSlave节点上建立连接用脚本

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

-secret 62b5dc021bbf90e8207057760bf71fae93867c154add3963e5f9c3befee2df06

Mac平台Jenkins连接WindowsSlave节点上建立连接用脚本

打开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 参数化构建

(Good)利用Jenkins玩转Android自动打包发包

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

Jenkins参数化构建

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

Jenkins参数化构建android项目

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

参数化构建build.gradle样例:

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

参数化构建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 自动发布脚本

在Windows下使用curl命令

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

使用 Jenkins 插件上传应用到蒲公英

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

使用Jenkins实现持续集成(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 定时构建

1.4.1 定时构建语法

    * * * * *

            第一个*表示分钟,取值0~59

            第二个*表示小时,取值0~23

            第三个*表示一个月的第几天,取值1~31

            第四个*表示第几月,取值1~12

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

1.4.2 常用定时构建举例

  由于项目的代码一般存在放SVN中,而一个SVN往往是有多个项目组在提交代码,而每个项目组又有多人组成,其中每个人也都在对自己的那块代码不停地在进行维护,所以说对于一个公司而言,SVN的提交记录往往是很频繁的,正因为如此,Jenkins在执行自动化构建时往往是以天为单位来执行的,下面举的例子就是在一天中常用的定时构建示例。

    每隔5分钟构建一次                              H/5 * * * *

    每两小时构建一次                                H H/2 * * *

    每天中午下班前定时构建一次               0 12 * * * 

    每天下午下班前定时构建一次               0 18 * * *

1.4.3 定时构建设置

  在Jenkins的主页面中,点击构建的项目,如下图所示:

  在project-parent页面,点击左侧的【配置】按钮,进入项目配置页面

  在【配置】页面中,下拉到【构建触发器】,在这里有两个可选选项,分别是“Buildperiodically”和“Poll SCM”,它们的特点如下:

Build periodically

  无论SVN中数据有无变化,均执行定时化的构建任务

Poll SCM

  定时轮询SVN,查看SVN中是否有数据变化,如果有变化,则执行构建任务

  至于上面两种情况,到底怎么选,亦或是组合在一起,都是看项目的需要,按照项目的需求进行配置。

2 参考链接

利用Jenkins玩转Android自动打包发包

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

两种常见挂载Jenkins slave节点的方法

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

Jenkins Master,Slave使用问题汇总及解决方案

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

linux jenkins添加windows节点,实现自动化部署

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

Jenkins使用教程之管理节点

https://www.jianshu.com/p/047362b11403

Jenkins Windows slave节点部署

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

Jenkins 为Jenkins添加Windows Slave远程执行python项目脚本

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

【Jenkins】Jenkins配置从节点,实现远程主机调用功能

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项目编译测试发布由maven构建的web项目

[原]Jenkins(八)---jenkins构建项目报错时发送错误报告邮件

[原]Jenkins(九)---jenkins分别发布多个项目到多个远程主机

[原]Jenkins(十)---jenkins注册管理员admin并赋所有权限给admin

[原]Jenkins(十一)---jenkins使用管理员admin创建用户和分配权限

[原]Jenkins(十二)---jenkins管理员用户无法登陆解决办法Access Denied

[原]Jenkins(十三)---jenkins用户权限管理

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

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

jenkins配置从节点

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

[原]Jenkins(九)---jenkins分别发布多个项目到多个远程主机

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

Windows中的COPY、XCOPY和MOVE覆盖功能发生更改

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

windows复制文件夹命令xcopy

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

windows copy命令详解

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

Jenkins之定时构建

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-10-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 集成步骤
    • 1.1 远程节点连接
      • 1.2 参数化构建
        • 1.2.1 7zip压缩命令
        • 1.2.2 xcopy命令
        • 1.2.3 copy命令
      • 1.3 自动发布脚本
        • 1.4 定时构建
          • 1.4.1 定时构建语法
          • 1.4.2 常用定时构建举例
          • 1.4.3 定时构建设置
        • 2 参考链接
        相关产品与服务
        持续集成
        CODING 持续集成(CODING Continuous Integration,CODING-CI)全面兼容 Jenkins 的持续集成服务,支持 Java、Python、NodeJS 等所有主流语言,并且支持 Docker 镜像的构建。图形化编排,高配集群多 Job 并行构建全面提速您的构建任务。支持主流的 Git 代码仓库,包括 CODING 代码托管、GitHub、GitLab 等。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档