持续集成,英文缩写为CI,CI一词来源于极限编程,作为它的12个实践之一出现,官方定义为“持续集成是一种软件开发实践,即团队开发成员经常集成它们的工作,通常每个成员至少每天集成一次,也就是意味着每天可能会发生多次集成,每次集成都能通过自动化的构建(包括编译、发布、自动化测试)来验证,从而快速地发现集成错误。”
针对移动应用平台,可以简单地理解成当有人向代码库的主分支提交代码的时候,后台的持续集成服务器会尝试去构建整个产品,包括编译打包、自动化测试、质量分析等,输出结果成功或失败。
Jenkins是一个用Java编写的开源的持续集成工具,提供了软件开发的持续集成服务,可以监控并触发持续重复的工作,具有开源、支持多平台和插件扩展、安装简单、界面化管理等特点。下面以jenkins为例,阐述如何搭建一个Android CI打包平台。
Jenkins安装和启动
-
Jenkins依赖于java环境,首先需要完成Java相关环境的安装以及配置
-
在Jenkins官网下载jenkins.war,然后完成相关环境变量的配置。下载地址:https://www.jenkins.io/zh/download/。可能需要对Jenkins相关参数做修改,修改方法为:jenkins+相关参数。例如,假设Jenkins默认端口号8080被占用了,需要修改成8888的端口,修改命令如下。
jenkins -httpPort=8888
-
Jenkins支持多种启动方法,启动命令如下:
手动启动:java-jar jenkins.war(如果是使用brew下载,可以使用brew services restart jenkins)。
后台启动(默认端口):nohup java-jar jenkins.war &。
后台启动(指定端口):nohup java-jar jenkins.war -httpPort=8888 &。
后台启动(HTTPS+指定端口):nohup java-jar jenkins.war -httpsPort=8888 &。 -
Jenkins浏览。用户在浏览器中输入下面链接地址,即可打开Jenkins CI打包平台,其中localhost可配置为具体IP地址。
http://localhost:8080/
Jenkins插件配置
- Jenkins是基于插件的功能配置,其提供许多实用插件,插件的安装方法如下图所示,通过Manage Jenkins->Manage Plugins->Available->Search->Click to install即可实现一个插件的安装。
- Jenkins系统设置
通过Manage Jenkins->Configure System对Jenkins的一些系统配置信息进行设置,一些常用设置包括Jenkins内部shell UTF-8编码设置、Jenkins Location和E-mail设置以及E-mail Notification设置等。
Jenkins Jobs配置
- Jobs基础配置
新建jobs,一般选择free-style software project类型。
配置编译参数。如果需要打包者自行选择打包类型,纳婿需要配置jobs的编译参数。
构建时执行相关的脚本。如果在打包期间需要执行某些脚本,可以在下面中填写。
注意问题
如果想使用Jenkins执行shell脚本,要注意相关的权限问题
参考资料
https://blog.51cto.com/u_15305798/3130600