简述:
持续集成:Continuous Integration,简称CI,意思是,在一个项目中,任何人对代码库的任何改动,都会触发CI服务器自动对项目进行构建,自动运行测试,甚至自动部署到测试环境。
这样做的好处就是,随时发现问题,随时修复。因为修复问题的成本随着时间的推移而增长,越早发现,修复成本越低。
1 > Travis CI是在线托管的CI服务,用Travis来进行持续集成,不需要自己搭服务器,使用方便,对开源项目是免费的,支持多数主流语言。
2 > Jenkins CI ,用Jenkins来进行持续集成。目前大多数公司都使用Jenkins。
1、Travis CI
Travis有两个网址:
由域名可知:
org是非盈利的,为GitHub上Public的repository提供免费服务;
com是盈利的,可以对Private的提供付费服务。com前100次build是免费的,此后按月收费。
二者的账户是相互独立的,但都可以用GitHub账户注册、登录。这里以Public为例。
1 > 首先,使用GitHub账号注册登陆Travis CI网站
2 > 第一次登录时,授权给Travis访问你的GitHub代码库。如果下方绿色按钮不可点击,请更新浏览器或更换浏览器。
3 > 然后,可以看到这个界面会显示当前github账号的所以项目。
如果没有显示,点击右上角的“Sync account”按钮,就可同步过来了。
把需要CI的项目(UIAutomatorTest)勾选上,便开启了该项目。
4 > 点击 “hebbely/UiAutomatorTest”,进入该项目
点击“More Options”按钮,选择“Setting” ,然后如下图打开选项:
5 > 添加.travis.yml
language: android android: components: - tools - build-tools-26.0.2 - android-26 - extra-android-m2repository - extra-android-support before_install: - chmod +x gradlew script: - ./gradlew assembleRelease
6 > README.md的“勋章”
在Travis网站上,点击上面那样的Status图标,可以在弹出界面中得到该项目的状态图标链接。
这个链接通常是这种形式:
[![Build Status]( https://travis-ci.org/hebbely/UIAutomatorTest.svg?branch=master)]( https://travis-ci.org/hebbely/UIAutomatorTest)
7 >之后,项目每次push之后,Travis都会自动构建自动测试该项目。
2、Jenkins CI 下载安装
Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。
Jenkins 是一个可扩展的持续集成引擎
主要用于:
持续、自动地构建/测试软件项目。
监控一些定时执行的任务。
Jenkins拥有的特性包括:
易于安装-只要把jenkins.war部署到servlet容器,不需要数据库支持。
易于配置-所有配置都是通过其提供的web界面实现。
集成RSS/E-mail通过RSS发布构建结果或当构建完成时通过e-mail通知。
生成JUnit/TestNG测试报告。
分布式构建支持Jenkins能够让多台计算机一起构建/测试。
文件识别:Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等。
插件支持:支持扩展插件,可以开发适合自己团队使用的工具。
1 > Windows下的安装
① 首先下载安装JDK,并配置好JDK的环境变量,详情请参考Android Studio安装与配置中第1点
② 到Jenkins官网下载最新版jenkins.war包。
有两个版本选择:LTS Release(长期支持版本),Weekly Release(每周更新版本)
自行选择,功能上几乎没区别。
③下载完成后在d盘根目录下新建一个jenkins文件夹,并把jenkins文件拷进去
④打开cmd,进入jenkins目录,然后输入命令:
java -jar jenkins.war
⑤打开浏览器,输入http://localhost:8080, 第一次打开需要解锁jenkins
⑥ 选择第一个“推荐安装”,下载相关插件
⑦完成后,进入创建用户页面,建议创建用户。也可以以admin账号登录继续,进入主页。
至此,至此jenkins在windows下的安装就完成了。
2 > 插件的安装与更新
如果还需安装其他插件,点击“系统管理” → “管理插件” ,比如下载android-emulator,android-lint等
3、Jenkins 用户注册
jenkins有自有的用户数据库,为了安全考虑,可以启用用户注册,使用权限控制登录
① 点击“系统管理” → “全局安全设置” ,
②如下图进行设置,勾选“允许用户注册”,授权策略先选择“登录用户可以做任何事”,设置之后保存退出。
③点击右上角“注销”,进入下图。
④ 填写注册信息
⑤然后,使用新用户登录。
点击“系统管理” → “全局安全设置” ,把授权策略改为“安全矩阵”,并勾选认证用户中所有选项。
4、Jenkins 配置
1 > 系统配置
① 点击“系统管理” → “系统配置” →“全局属性”模块
② 在“全局属性”板块勾选“环境变量”
另外,在“Jenkins Location ”模块,Jenkins URL最好设置为具体的ip地址,同时配置管理员邮箱
2 > 全局工具配置
点击“系统管理” → “全局工具配置”
配置JDK、Git、Gradle:
参考:
Android+Jenkins+Git+Gradle持续集成
Jenkins构建Android项目持续集成之Jenkins的安装篇