持续集成&持续交付&持续部署

CI, CD AND CD:

CI很容易理解,就是持续集成。但是CD既可以指代码持续交付,也可理解为代码持续部署。CI和CD之间有很多相似的部分,但是也有很大的区别

持续集成:

持续集成强调开发人员提交了新代码之后,立刻进行构建、(单元)测试。根据测试结果,我们可以确定新代码和原有代码能否正确地集成在一起(开发提交代码/版本合并)

常用工具jenkins

 

持续交付:

持续交付在持续集成的基础上,将集成后的代码部署到更贴近真实运行环境的「类生产环]境中。
比如,我们完成单元测试后,可以把代码部署到连接数据库的环境中更多的测试。如果代码没有问题,可以继续手动部署到生产环境中(就是持续集成后的产出物如:jar、war、构建后的环境)
解释:持续交付是指,频繁地将软件的新版本,交付给质量团队或者用户,以供评审。如果评审通过,代码就进入生产阶段。 持续交付可以看作持续集成的下一步。它强调的是,不管怎么更新,软件是随时随地可以交付的。
 
 

持续部署:

持续部署则是在持续交付的基础上,把部署到生产环境的过程自动化(就是整体流程自动化实现devops)
 

我个人觉得持续集成、持续交付、持续部署非常值得推广。开发过程中最怕集成时遇到问题导致返工,而持续集成、持续交付、持续部署恰恰可以早发现早解决,从而可以避免这个问题。
 
 

解释:

集成是指软件个人研发的部分向软件整体部分交付,以便尽早发现个人开发部分的问题(编译、测试、打包)
部署是代码尽快向可运行的开发/测试节交付,以便尽早测试;
交付是指研发尽快向客户交付/测试交付,以便尽早发现生产环境中存在的问题。
而所谓的持续,就是说每完成一个完整的部分,就向下个环节交付,发现问题可以马上调整。是的问题不会放大到其他部分和后面的环节。
 

在持续集成的基础上,可以简单的把持续交付和持续部署理解为:

  • 持续交付:持续集成+质量部门或者验收部门的自动化测试,
  • 持续部署:持续交付+自动发布生产环境
通俗解释:

持续集成:模块组装

持续部署:客户安装

持续交付:产品升级

 
 

相关连接:

https://blog.csdn.net/belalds/article/details/81091753 ....................CI 与 CD 有什么区别
https://www.zhihu.com/question/23444990 ...................................如何理解持续集成、持续交付、持续部署
https://www.sohu.com/a/332043242_618296 ................................从0到1了解CI/CD:初学者入门必备
https://mp.weixin.qq.com/s?__biz=MzU4MTE2NDEyMQ ..............测试流程-持续集成
https://www.jianshu.com/p/e4065eedf1ba ....................................jenkins自动化调度
https://mp.weixin.qq.com/s?__biz=MjM.........................................DevOps测试实践

posted on 2021-09-02 18:18  chen_2987  阅读(196)  评论(0)    收藏  举报

导航