Android+jenkins+github+linux服务器版
2016年4月28日
说到持续集成,他给了不少的好处。他可以根据你的需求来构建代码,实时检查代码漏洞(结合插件)。他也可以降低测试部门,开发部门,产品部门沟通误区。因为你时刻都能获取到最新的产品,以及历史构建产品。对于Android来说还可以结合Lints来检查代码,结合Sonar来检查代码规范性。
这边文章只是讲环境搭建。在你构建成功并提取出最新的包,然后发送邮件给你自己就算成功。
[TOC]
工具
- github仓库一个
- Linux服务器
- Linux服务器上要有Android SDK和Git,下文会讲怎么安装
- jenkins软件
在Linux服务器:
这是我服务器的配置,使用的Ubuntu32位,配置不高,足以运行。大概需要3G左右硬盘空间和200MB的运行内存。
1.png-50.8kB
首先要安装git
apt-get install git
检查有没有安装成功
git --version
安装成功以后,设置用户名和邮箱
git config --global user.name "liucl"
git config --global user.email "youremail@example.com"
然后生成公钥
ssh-keygen -t rsa -b 4096 -C "youremail@example.com"
他会和你交互三次,第一次是公钥存放路径以及名称,第二次和第三次是设置密码。默认情况下,密码存在用户目录的.ssh下面。我们现在把公钥拷贝出来。
cat ~/.ssh/id_rsa.pub
把他上传到github
注意,公钥一定要让构建服务器生成。
这里我假设你已经有一个仓库用来持续构建了。
安装jdk
jenkins需要java,因为他是一个war放到Tomcat可以直接运行,当然也可以直接运行。先下载jdk:
sudo apt-get install openjdk-7-jdk
安装Jenkins
jenkins使用的是2.0版本
到了他的官网之后点击wiki,这里是官方文档,当你集成成功之后,记得多查阅文档,很多问题都在里面。
下载Jenkins
wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
vim /etc/apt/sources.list 把deb http://pkg.jenkins-ci.org/debian binary/ 加到末尾
sudo apt-get update
sudo apt-get install jenkins
不报错你的Jenkins就安装成功了。
启动你的Jenkins
service jenkins start
然后访问Jenkins首页,端口号默认为8080。测试是否成功,成功会弹出一个页面,不用理会,后边会说到。
127.0.0.1:8080
下载Android SDK
话说没图形的SDK还真是困扰了我,但是google给了一种命令行下在的方式,真的很爽。首先现在AndroidSDK的基础包
wget http://dl.google.com/android/android-sdk_r24.4.1-linux.tgz
然后解压
tar -zxvf android-sdk_r24.4.1-linux.tgz
进到tools目录
cd android-sdk-linux/tools
然后查看可见的sdk版本
./android list sdk -a
这里会列出很多个版本,每个版本前面会有序号,使用
./android update sdk -a -u -t [序号]
-a 列出所有sdk版本
-u 无ui模式
-t 指定安装版本
就可以下载了,找到你gradle信息里面的版本就够了。值得注意的是,每下载一个都要看一下序号,因为他会变。别下载错了。
最后还有配置一下ANDROID_HOME
这个Gradle需要用到
vim /etc/profile
#结尾加上 export ANDROID_HOME="你的sdk路径"
source /etc/profile
上边别手贱加空格- -
测试:为了检验一下你的sdk是否下载准确,并解决所有依赖,建议把
项目clone下来用gradle命令测试一下。网上教程一大堆,这个步骤是必不可少的。
git clone 项目地址
cd 项目的根目录
sudo chmod +x gradlew
./gradlew assembleRelease
配置客户端
安装
到此Linux服务器配置得差不多了,现在访问Jenkins主页。
首次进入会输入管理员密码,在你的linux日志可以看到。我的是ubuntu的,路径为:
cat /var/log/jenkins/jenkins.log
。若果你找不到,点not sure where to find it
他会告诉你的。
接下来会安装插件,我们选择自定义安装,就是右边那个。确保发邮件插件,Gradle插件和Github插件安装。
2.png-38.9kB
接下来设置账户和密码
创建项目
进入主界面点创建一个任务,选择创建自由风格任务。
-
3.png-32.2kB源码管理
我们选择git。填入信息。新手建议择https风格的仓库链接,这样直接输入账号和密码就可以用了。选择你的分支
-
构建器触发
根据你的需求设置,具体设置方法参考官方文档 -
7.png-37.4kB构建
选择Invoke Gradle Script
配置如下
4.构建后操作
选择EditableEmailNotiftation。这个是发送邮件的配置,里面以后很多常量。这些常量在系统设置里面设置,你也可以在这里设置。
点高级
添加一个触发器。选择Alawys,然后保存。
5.提包:
在构建后操作
添加一个Archive the artifacts,配置如下
配置项目
去系统管理里面,点系统设置:
在全局属性里面设置ANDROID_HOME信息,如果你把Android home配置全局变量,这步可以省略。
在
Extended E-mail Notification
里面设置邮件信息5.png-55.5kB
下方有一个测试邮件的功能,你可以先测试成功再来配置。
立即构建
回到首页点击立即构建
,构建成功刷新,你的新包就在那里。
结尾:
最后看一下使用资源情况
10.png-34.4kB