一、Jenkins简介
Jenkins是一个独立的开源自动化服务器,可用于自动执行与构建,测试,交付或部署软件相关的各种任务,是目前最流行的一款持续集成及自动化部署工具。
1、概念理解
1.1、持续集成
功能角度: 类似maven生命周期,集成各种插件。Jenkins可以集成git,maven,sonar,部署插件等。
项目角度: 各个小组分别负责各个模块开发,本模块独立测试虽然能够通过,但是上线前将所有模块整合到一起集成测试却发现很多问题,想要解决就需要把代码返工重写,而且仍然有可能有问题。
那么经常性、频繁的把所有模块集成在一起进行测试,有问题尽早发现,这就是持续集成,目的是尽早发现项目整体运行问题,尽早解决。
1.2、持续交付
功能角度: 功能迭代迅速,持续发布,不需要等待一个大版本再发布。
项目角度: 项目的各个升级版本之间间隔如果时间太长,对用户反馈修改不及时,无法改善用户体验,用户流失严重。
那么经常用小版本不断进行快速迭代,不断收集用户反馈信息,用最快的速度改进优化,目的是研发团队的最新代码能够尽快让最终用户体验到。
2、Jenkins目标
- 降低风险:一天中进行多次的