淘先锋技术网

首页 1 2 3 4 5 6 7


回系列博客主目录及代码地址 spring boot项目基于docker搭建gitlab CI CD持续集成环境

CI&CD

CI - 持续集成

  • 定义
    持续集成是一种软件开发实践,其目标是快速确保开发人员新提交的变更是好的,让产品可以快速迭代,同时还能保持高质量。
    其核心措施是频繁地将代码集成到主干分支,并通过自动化构建、测试来验证代码的正确性,从而能够快速尽早的发现集成错误 (快速失败),只要有一个测试用例失败,就不能集成。
  • 持续集成的作用
  1. 快速发现集成错误,每完成一点更新,就集成到主干,可以快速发现错误,定位错误也比较容易
  2. 防止分支大幅偏离主干,如果不是经常集成,主干又在不断更新,会导致以后集成的难度变大,冲突多
     甚至难以集成
  3. 保证代码保持高质量,随时可交付。通过自动化测试验证每次代码的提交,并及时解决集成错误,代码
     能够保持高质量,等到feature开发完成以后可以随时进行交付
  • 持续集成的原则
  1. 需要版本控制来保障代码能够回退到历史任意版本
  2. 需要有专门的集成服务器来执行集成构建。根据项目的具体实际,集成构建可以被软件的修改来直接触发
     也可以定时启动
  3. 开发人员必须及时向版本控制库中提交代码,也必须经常性地从版本控制库中更新代码到本地
  4. 必须保证构建的成功。如果构建失败,修复构建过程中的错误是优先级最高的事情
  • 持续集成系统的构成
    CI 构成

CD - 持续部署 & 持续交付

CD其实包括持续部署(Continuous Deployment)和持续交付(Continuous Delivery)

  • 持续交付(CD)通常是指整个devops流程链(管道),它自动监测源代码变更并通过构建、测试、打包和相关操作运行它们以生成可部署的版本。
  • 持续部署(CD)是指能够自动提供持续交付管道中发布版本给最终用户使用。而我们将要大奖的gitlab CI CD中的CD是持续部署
    在这里插入图片描述