本文主要是介绍使用 Jenkins 实现持续集成 (Android),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
http://www.pgyer.com/doc/view/jenkins
使用 Jenkins 实现持续集成 (Android)
环境
无论是什么系统,配置jenkins的配置是一样的
安装Jenkins
- 下载最新的版本(一个 WAR 文件)。官网下载地址
- 运行 java -jar jenkins.war
注意:Jenkins 需要运行 Java 5以及以上的版本。
安装Jenkins相关插件
点击系统管理
->管理插件
->可选插件
,可搜索以下插件安装
git插件(GIT plugin)
ssh插件(SSH Credentials Plugin)
Gradle插件(Gradle plugin) - android专用
Xcode插件(Xcode integration) - ios专用
新建Job
主页面,新建
->构建一个自由风格的软件项目
即可。 对于类似的项目,可以选择
->复制已有的Item
,要复制的任务名称里输入其他job的首字符会有智能提示。
配置git仓库
如果安装了git插件,在源码管理会出现Git,选中之后: Repositories -> https://github.com/**** 你的仓库地址
如果是ssh还要配置Credentials。 Branch -> */master,选定一个要编译的分支代码。 如下:
配置自动拉取最新代码
在构建触发器中,有两种自动拉取代码并编译的策略: 1. 设置Poll SCM,设置定时器,定时检查代码更新,有更新则编译,否则不编译。
- 也可以设置Build periodically,周期性的执行编译任务。
配置gradle - android专用
请ios的朋友们请飘过. 如果安装gradle插件成功的话,应该会出现下图的Invoke Gradle script,配置如下:
${WORKSPACE}
表示当前job下的workspace目录,主要是存放代码。一般${WORKSPACE}
目录位于当前用户目录下,OS X 系统路径一般是/Users/用户名/.jenkins/jobs/
;更多的环境变量请参考文末附录。 这样,就能自动在project下的app的build/outputs/apk下生成相应的apk. 注意:编译失败?可能要解决以下2个问题:
-
gradle没配置环境变量。 比如我在/etc/profile中配置一下GRADLE_HOME:
-
也可以设置Build periodically,周期性的执行编译任务。 因为一般来说local.properties不会添加到版本库。 所以需要手动copy到${WORKSPACE}下的Project目录下(可参考自己Android Studio工程结构)。 关于local.properties的定义,这里记录一下,做个备份:
再编译一般就会编译成功,当然当那些第三方库需要重新下载的话,编译可能会很慢。
上传到蒲公英平台
curl -F "file=@/tmp/example.ipa" -F "uKey=" -F "_api_key=" http://www.pgyer.com/apiv1/app/upload
这篇关于使用 Jenkins 实现持续集成 (Android)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!