利用Jenkins搭建Android自动化打包。
参考Jenkins+Git配置和Android使用Jenkins持续集成进行整理。
环境搭建
1.首先到Jenkins
官网下载安装Jenkins
选择对应系统的稳定版本,这里装的是Mac版本。
- 下载完成之后,直接点击安装就可以了。
- 安装完成之后,在浏览器输入
http://localhost:8080/
即可打开Jenkins主页。
2.安装插件
可以选择在步骤1安装过程中选择默认的插件安装,也可以在主页系统管理
中选择插件管理
进行安装。
- 确保
git
和gradle
等插件已安装完成,这一步很重要,不然后面会找不到配置按钮或导致构建失败。
3.远程代码仓库配置(这里以GitHub
项目为例)
- 在GitHub上创建一个
Repositories
,将项目拉取到本地,并在此目录下新建一个Android
项目。
4.进入Jenkins主页开始配置
4.1 新建一个任务
4.2 设置项目配置
-
配置
github
项目的URL
这里填入的URL是在GitHub上面的项目拷贝过来的
URL
。注意是URL
链接,不是SSH
-
配置构建参数
配置打包类型,这里的参数对应的是Android项目gradle配置里面的buildTypes
设置的打包类型。
-
配置打包分支
点击Git Parameter
(如果没有这个参数检查一下对应的插件是否安装)
输入名称,如
mBranch
这个名称后面配置源码管理的时候会用到。-
配置源码管理
-
Github利用
Webhook
实现Push代码之后自动构建
(1) Git配置
在GitHub上找到setting
点击进去
Developer settings
-> Personal access tokens
填写token名称,并选中如下的选项
这时得到一个
token
,切记保存好,一旦丢失无法找回只能重置或删除了。
(2) 添加Webhooks
在项目下的settings
点击进去
配置服务器地址等信息
注意!这里的地址必须是服务器的IP地址,如填写localhost
或者127.0.0.1
将会导致无法自动构建。详见stackoverflow上的回答
(3) Jenkins上配置
先检查插件Gitlab Hook Plugin
是否安装
点击系统管理
->系统设置
->GitHub
->添加GitHub服务器
添加凭据,选择
Secret Text
,在弹出的窗口中填入步骤1获取到的token
回到项目的配置中,勾选上
GitHub hook trigger for GITScm polling
自此完成了自动检测GitHub的
Push
提交,自动打包
-
配置Gradle
task 里面输入我们要执行的命令
assemble$BUILD_TYPE
表示打对应类型的apk包
注意!这里要勾选上Pass all job parameters as Project properties
表示把你上面的那些参数用来当作gradle构建参数,否则的话是不会起作用的。
-
配置归档成品
这个路径是apk的输出目录,可以在Android项目中的
gradle
文件中进行配置。自此已配置完成,我们开始来点击构建项目。项目下面点击Build with Parameters
,可以看到我们之前设置的配置。打包类型和分支选择。
点击
Build
按钮,开始构建。构建完成之后,可以看到
Last Successful Artifacts
下面有一个输出的apk
,这个就是我们刚刚设置的归档成品。这里设置的是输出apk,还可以根据需求,输出其他的内容。