● 统一的代码库
● 自动构建、自动测试
● 每个人每天都要向代码库提交代码
● 每次代码提交后都会在持续集成服务器触发一次构建
● 保证快速构建
● 模拟生产环境的自动测试
● 每个人都可以很容易的获取最新的代码
● 每个人都清楚正在发生的情况
● 自动化的部署
04流程 Jenkins简介概念
Jenkins是一个开源的、可扩展的持续集成、交付、部署(软件/代码的编译、打包、部署)的基于web界面的平台。允许持续集成和持续交付项目,无论用的是什么平台,可以处理任何类型的构建或持续集成。
场景构建 01全局工具配置在"系统管理" -> "全局工具配置" 中,设置要使用到的构建工具、版本控制工具和JDK 版本。这些工具通常有Maven、Ant、go等主流构建工具,git等版本控制工具。当然你也可以自己配置,但是要记得配置环境变量。
02源码管理在源码管理工具中选择Git,添加Git仓库、添加Git证书、选择一个分支,如果Git仓库有子仓库,我们也可以对子仓库进行配置,选中后就可以循环更新所有子仓库,当然除了手动触发,我们也可以利用webhook自动检测Git仓库代码更新,自动编译。
03上下级项目如果你的构建项目需要形成上下级项目,一个构建完成自动触发另一个构建完成, 根据项目的构建需求,在“构建触发器”中设置根据不同的上游工程的状态触发,形成流水线工程构建。
04分布式触发Jenkins的分布式架构可以解决单点构建任务多、负载较高、性能不足的问题。Master负责分发job任务,把job分配给某个或者某几个slave节点来工作,Slave则负责执行内容,来真正运行Master给到的构建任务。
小结至此给大家简单的介绍了CI/CD的基本概念、意义及流程,希望对未接触过的人有所帮助,大家可以有时间动手搭建下,Jenkins是一个强大的CI工具,持续、自动地构建、测试软件项目,后续四维实验室会再与大家分享其更加具体的持续集成的实践,那么,下次见~
化整为零(三) 2020-09-07 销售拜访与零信任 2020-08-31 知己知彼,方能百战不殆(一)——常见网络威胁总结 2020-08-24 理解单点登录 - 开篇 2020-08-17