持续集成:Jenkins+Git+Maven实战部署
一、持续集成是什么?解决什么问题?
1、持续集成的优点:
1、解放劳动力
2、避免人为失误
3、提高效率
4、质量持续反馈(每小时构建,每天构建)
5、质量保障
2、持续集成的知识体系
Linux+Git+Jenkens+Maven+Jdk,需要时可以增加一些插件
持续集成体系一般是质量主导,或者运维协助,也可以找开发协助。
二、如何实施?如何入门?
1、准备
Jenkins安装
1)官网下载war包 https://jenkins.io/
2)服务安装jdk
具体可参考这篇文章:http://www.jianshu.com/p/0e67b4545d08
2、启动
java -jar /usr/local/webserver/jenkins.war --httpPort=8080
/usr/local/webserver/jenkins.war 路径可能不一样,根据服务器上jenkins.war所在的路径设置,如果端口号被占用了,可以用8090或其它端口号。
3、访问--通过浏览器
http://ip:端口 (ip为服务器ip地址,端口为启动时设置的端口号)
4、设置权限
Jenkins是一个发布服务,一定要设置权限,否则容易被玩死。
设置方法:登陆 -> 系统管理 -> Configure Global Security
在尝试设置管理员权限的时候,取消了所有的权限,可能设置超时自动保存了,已登陆账号提示无权限。
这里设置时特别留意要给自己的账号设置管理员权限。
b5、没有权限时修改配置文件
返回Linux系统,按CTRL+C退出jenkins,修改配置文件
[root@localhost ~]# ls -a 查看根目录下的所有内容
[root@localhost ~]# cd .jenkins 进入 .jenkins
[root@localhost .jenkins]# ll 显示 .jenkins下的文件
修改config.xml文件
[root@localhost .jenkins]# vi config.xml
找到useSecurity部分,将true改成false,保存退出
重启Jenkins,安全设置就被还原了
6、重新设置权限
重新通过浏览器 http://ip:端口 访问Jenkins,不用登陆账号可以直接设置。
添加账号Winnie并且赋予全部权限,因为不知道排第一的匿名用户是否会影响设置,也先赋予全部权限。
登陆Winnie账号后查看配置信息,并取消匿名用户的所有权限。
设置权限很重要。具体项目细化到运维,不同的组,不同的人等。
7、安装插件
若没有插件,需要用shell、python等手动写脚本
点击 系统管理 -> 管理插件 ,对插件进行管理
管理插件页面
搜索安装maven插件:maven info plugin
8、新建job
在如下页面点击 新建
新建项目:WH_Jenkins_Project
选择:构建一个maven项目,点击左下角的 OK 按钮
未完待续。。。。。。
三、企业持续集成体系落地存在的障碍
团队内部服能 -> 首先得具备这个能力
QA团队能力不够 -> 内部培养,外部招人
集成&打包 -> 一条job一个build
四、持续集成的其它作用
监控
静态代码扫描
单元测试
自动化测试