持续集成平台-jenkins
、什么是持续集成
1、概念
持续集成(Continuous Integeration),也就是我们经常说的CI
持续集成(CI)是一种实践,可以让团队在持续的基础上收到反馈并进行改进,不必等到开发周期后期才寻找和修复缺陷。
2、为什么要进行持续集成?
.Bug总是在最后才发现
.越到项目后期,问题越难解决
.软件交付时机无法保障
.程序经常需要变更
.无效等待变多
3、多人开发流程
多人协作开发,开发人员只会测试自己的代码,多人的代码集成在一起,难免出现这样那样的bug,这时候就需要jenkins对集成后的代码进行打包编译,如果有问题就会进行反馈。
持续集成并不是要等到项目稳定,而是要在项目一开始就进行,这样才能今早发现问题,解决问题。
二、持续集成的用途(红色字体都是)
三、持续集成的好处
1.解放了重复性劳动
2.更快地修复问题
3.更快地交付成果
4.减少手工的错误
人与机器最大的区别,在重复性动作上,人容易犯错,而机器犯错的几率几乎为零。
所以,当我们搭建完成持续集成服务器后,以后的事情就交给集成服务器来打理吧。
5.减少等待时间
持续集成缩短了从开发、集成、测试、部署各个环节的时间,从而也就缩短了中间可以出现的等待时间。
持续集成意味着开发、集成、测试、部署也得以集成。
6.更高的产品质量
集成服务器往往提供Code View、代码质量检测功能
对代码不规范或者有错误的地方会进行标识,也可以设置邮件、短信等进行警告。
而开发人员通过Code review 也可以持续提高编程能力。
四、jenkins-介绍
一款持续集成工具
1、环境安装
jdk1.8
jenkins下载地址:https://jenkins.io/download
下载Long-term Support(LTS)版本
2、jenkins概念
1)Job
在jenkins平台中,都是以Job(任务/工程)为单位去完成一件事情。
2)plugin(插件)
jenkins提供平台,集成各种插件来完成一个job.想用jenkins平台来做什么,先找找有没有相应的插件。
比如:windows命令、linux命令的支持、svn和git代码获取、邮件发送等
路径:系统管理->插件管理->可选插件
3)workspace(工作空间)
jenkins是通过文件形式来存储和管理数据的。
workspace即给jenkins指定一个专门的目录来存储其所有的配置和数据。
jenkins的workspace是根目录。每个job都有属于自己的workspace
4)jenkins管理(Jenkins Manager)
整个jenkins的全局配置
包括权限管理、插件管理、节点管理。
3、jenkins Job 详解
1)基本信息配置(General)
Job名字,指定当前Job的工作空间、指定当前Job绑定到哪个执行机上执行等
2)源码管理(Source Code Management)
svn/git等,需要相应的的插件支持
配置好源码管理后,在执行Job时会自动从相应的源码库里下载到当前的Job工作空间中。
3)构建触发器(Build Triggers)
触发器:执行当前任务的条件
常用定时构建:类似windows/linux的定时任务。指定当前执行的时间。
定时构建1:要求每天9点,12点,14点运行这个任务(其中*代表所有的有效值)
注意:如果以H代替0,则不会出现整点情况
定时构建2:要求每天9-14点的每个整点执行任务
定时构建3:要求周一到周五,9点到18点的每个整点执行任务
轮训 SCM
4)构建环境(Build Envriment)
5)构建(Build)