持续部署

概念

持续部署(continuous deployment)是持续交付的下一步或者说更高阶段,指的是代码通过评审以后(或者是通过自动化测试以后),自动部署到生产环境。持续部署是持续交付的最高阶段。这意味着,所有通过了一系列的自动化测试的改动都将自动部署到生产环境。它也可以被称为“Continuous Release”。 大多数的公司如果没有制度的约束或其它条件的影响,都应该以持续部署为目标。
      持续部署(continuous deployment)是持续交付的下一步,指的是代码通过评审以后,自动部署到生产环境。

目标

代码在任何时刻都是可部署的,可以进入生产阶段。
有很多的业务场景里,一种业务需要等待另外的功能特征出现才能上线,这使得持续部署成为不可能。虽然使用功能切换能解决很多这样的情况,但并不是每次都会这样。所以,持续部署是否适合你的公司是基于你们的业务需求——而不是技术限制。
持续部署是理想的工作流程?
“开发人员提交代码,持续集成服务器获取代码,执行单元测试,根据测试结果决定是否部署到预演环境,如果成功部署到预演环境,进行整体验收测试,如果测试通过,自动部署到产品环境,全程自动化高效运转。”
实际上,产品在从需求到部署的过程中,会经历若干种不同的环境,例如 QA 环境、各种自动化测试运行环境、生产环境等。这些环境的搭建、配置、管理,产品在不同环 境中的具体部署,状况是比较非常复杂的,从头到尾地全自动持续部署的确困难。那么,如果能做到持续交付,保证代码在模拟环境没问题,也许团队成员做到真正的心理有数。

优点

"You build it, you run it"
相对独立地部署新的功能,并能快速地收集真实用户的反馈。

posted @ 2021-08-25 17:16  easonChen  阅读(738)  评论(0编辑  收藏  举报