Android Jenkins + gradle 实现自动化打包流程并上传至蒲公英平台全过程
最近在windows上尝试了jenkins持续集成环境搭建,把自己的写的app进行了自动化打包上传的一套流程,下面把我的经验分享给大家。
本文大纲:
说明:本文以windows为例
- 环境准备
- jenkins安装(windows)
- 系统设置
- 创建任务
- 执行并查看输出
1. 环境准备
- JDK1.8
- Gradle5.4
- Git
- AndroidSDK
以上工具保证安装并添加环境变量。 包括JAVA_HOME,ANDROID_HOME,GIT_HOME,GRADLE_HOME
2.jenkins安装(windows)
官网下载地址:https://jenkins.io/zh/download/
解压并点击安装
安装完成,打开 http://localhost:8080 这里默认地址
省略步骤:
1. 安装推荐的插件-
2. 创建用户
其中必须要安装的插件有:
-
- Github
- Gradle
- Email Extension Plugin
- Upload to pgyer(蒲公英上传,需要手动添加插件)
最终,进入到主界面(第一次进入没有下面图中的两个任务):
3.系统设置
点击 Manage Jenkins(系统管理)-->Config System(系统设置) 进入系统设置
3.1 系统管理员邮箱
3.2 邮件通知
备注:
1.这里的用户名必须与2.1系统管理员邮箱地址一致
2.这里密码使用的qq邮箱的授权码,关于授权码获取 https://service.mail.qq.com/cgi-bin/help?subtype=1&&no=1001256&&id=28
3.3 Android SDK配置
注:这里关系到gradle任务的执行,如果没有配置此项,Jenkins执行gradle任务的时候可能会检测不到android插件自带的任务,例如assembleRelease,assembleDebug等。
4.创建任务
新建item->Freestyle project(*风格的项目)
4.1 源码管理:
1.添加项目git地址
2.(如果是私有项目)添加凭据:
首先创建凭据,输入git用户名密码
在凭据栏里选择刚刚创建的凭据
4.2 构建
构建后操作
4.3 用于存档的文件(Archive the artifacts)
备注:
上面通配符表示工作空间下 app/build/outputs/apk/release/下所有.apk文件
4.4 上传蒲公英(Upload to pgyer with apiV2)
前置条件:
下载插件:jenkins -> 系统管理 -> 插件管理,搜索 Upload to pgyer,点击下载,安装成功重启服务。
备注:
pgyer api_key是用户在蒲公英的key, 注意不是App key. 查看自己的api_key https://www.pgyer.com/account/api
4.5 构建完成发送邮件
5.执行并查看输出
5.1 查看任务列表
任务创建好之后,主面板会显示如下:
5.2 执行构建
点击任务进入, 点击Buid Now(立即构建):
5.3 查看任务输出
每次构建任务执行之后会生成一个任务记录,显示在左下:
点击其中一个任务记录,进入,并点击控制态输出
通过控制台打印,就能看到构建的详细信息。
以上配置好之后,jenkins一套任务流程就完成了,执行build Now会依次执行以下工作:
- 从git服务器拉取项目到工作空间
- 在工作空间内执行gradle clean assemble任务,生成apk产物
- 将生成的apk产物上传到蒲公英平台
- 构建完成,发送邮件给指定人。
1,2,3任何一个环节出错,都不会继续向下执行;最后如果构建成功,则发送成功邮件给指定人;若构建失败,则发送失败邮件给指定人。
结尾: 本文全过程演示了jenkins搭建构成,希望方便入门的小伙伴参考。jenkins2.0还有更加灵活的pipeline任务,关于pipeline语法和配置,可以详见jenkins官方文档,后续还会分享。