Jenkins拥有的特性包括:
1. 易于安装-只要把jenkins.war部署到servlet容器,不需要数据库支持。
2. 易于配置-所有配置都是通过其提供的web界面实现。
3. 集成RSS/E-mail通过RSS发布构建结果或当构建完成时通过e-mail通知。
4. 生成JUnit/TestNG测试报告。
5. 分布式构建支持Jenkins能够让多台计算机一起构建/测试。
6. 文件识别:Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等。
7. 插件支持:支持扩展插件,你可以开发适合自己团队使用的工具。
Jenkins安装
前提准备:需要安装JDK、Git(用Git做版本管理)
下载jenkins.war:可以去官网http://jenkins-ci.org/下载最新版本,下载地址:http://mirrors.jenkins-ci.org/war/latest/jenkins.war
启动服务器
打开命令行(CMD),并定位到jenkins.war文件的目录下,然后执行Java –jar jenkins.war看到如下图所示,表示启动成功。
记下上面输出的密码,也可到当前电脑用户目录下查看:C:\Users\用户名\.jenkins\secrets\initialAdminPassword,用户名换成你自己当前电脑账号
然后打开浏览器输入http://127.0.0.1:8080/,就能进入到jenkins初始化界面,如下图
输入上面记下的密码,下一步进到下面的界面:
这里新建一个用户,也可不输入,直接Continue as admin,进入系统后再添加也行,下一步进入如下界面,安装需要插件:
选择左边的建议安装插件,下一步:
安装插件时有可能会失败,失败时可以刷新一下界面即可进入系统,进入系统后再重新安装:
进入“系统管理”,失败的插件在右边上部分显示,如下图:
进入“管理插件”-“可选插件”,安装必须的插件:
- 必须安装的有:
git(这里使用git作为版本控制):scm-api.hpi、git-client.hpi、git.hpi
android:port-allocator.hpi、android-emulator.hpi、analysis-core.hpi、android-lint.hpi
gradle(项目是使用Android Studio开发的):gradle.hpi - 可选安装的有:
单元测试:junit.hpi
代码覆盖率:jacoco.hpi
代码查虫:findbugs.hpi
邮箱扩展:email-ext.hpi
如果安装失败,先看一下失败原因,点失败的插件右边的详情,如下图:
这里有两种情况会失败:
1、依赖的包没有安装,按照提示安装即可;
2、网络连接失败,是网络太慢了,这种情况可以进入官网(https://plugins.jenkins.io/)手动下载安装,查找插件下载到本地,网页打不开时,尝试把https改成http,我就是改成http才能下载的
插件下载好后,进入“系统管理—>管理插件—>高级”
如上图,将之前下载的插件,上传安装。重启服务生效。
安全设置
控制权限
为了安全起见,设置访问控制权限
进入授权策略界面,如下图:
默认是没有限制的,即任何用户都是超级管理员,这里选择“安全矩阵”,输入管理员账号,点添加,然后打上所有的勾并保存
如果忘记管理员密码,可以到电脑用户目录下找前面初始化时记下的密码
添加用户
权限设置和前面一样
系统设置
“系统管理—>系统设置”,进入到系统设置界面
这里只需要设置:全局属性,Jenkins Location,Extended E-mail Notification这三项,其它默认即可
全局属性添加android SDK的环境变量:ANDROID_HOME,如下图:
Jenkins Location输入Jenkins的地址,编译结果通过这个地址来查看详细信息的,系统管理员邮件地址是用来发送结果的邮箱,如下图:
Extended E-mail Notification 是配置发送邮箱的账号和密码,如下图:
创建项目
回到首页,点击新建,创建一个项目,如下图:
输入项目名称和选择项目类型为“自由风格软件项目”,如下图:
进入到项目配置界面,General页默认就行,源码管理页配置如下图:
这里用Git作为版本管理工具,所以选择Git,并输入仓库地址,Credentials 点击“Add”按钮,选择“Jenkins”,进入下图界面:
我的这个测试工程是在github上的,所以这里输入的用户密码是github的,根据你的情况输入
构建触发器页选择“Poll SCM”并输入“日程表”为:H/5 * * * *,表示每5分钟触发一次自动构建,如下图
构建页增加构建步骤,选择"invoke Gradle script",如下图
进入下面界面,选择“Use Gradle Wrapper”项,并输入“Tasks”为:clean assembleRelease,“Root Build script”输入:${workspace},如下图:
接下来添加 "构建后操作",选择"archive the artifacts",如下图:
进入后输入要存档文件,如下图:
上图的文件是编译后的apk包,请根据你自己的真实情况填写即可,
然后再增加一个“构建后操作”选择"Editable Email Notification",如下图:
输入接收邮箱和回复邮箱,邮件主题,邮件内容,添加附件、添加日志,并点击“advanced Settings”,即高级,进入下图界面:
上图是添加构建后发送邮件的条件,这里可以失败时发给开发者,成功时发给测试和领导,看情况而定。
然后保存退出,最后等待编译结果,当版本库上有新提交时就会自动构建,也可以手动触发构建。
构建后会收到如下邮件: