关于持续交付和持续部署,您需要了解的一切


浏览:1172 次

;作者| Forsyth Alexander

;来源| outsystems.com

;翻译|数码兄弟

;在CI/CD和DevOps领域,持续交付和持续部署是一个常见的话题。CI代表“持续集成;这是显而易见的。然而,CD”的解释是模棱两可的,很难区分它代表的是持续交付还是持续部署。此外,由于Gartner和其他行业分析机构和CI平台的扩展,持续交付正在产生新的意义。本文解释了它们之间的差异,并讨论了持续交付跟踪的发展方向。

;什么是持续交付?

;连续交付通常是指在生产中自动准备代码发布和代码更改。从合并代码更改到交付生产就绪版本,过程的每个阶段都涉及测试和代码发布的自动化。代码已上传到源存储库(如GitHub)或容器存储库(例如Docker)。上传后,运行自动测试,如单元测试、回归测试和性能测试,以确保代码的质量。在此过程之后,计划执行的内容将自动部署到中间环境,并可由运营团队按需实时推送。目标是为部署到生产环境准备代码。

;我刚才说“部署”,这不是持续部署吗?实际上不是。持续交付的结果是可以部署的代码,而不是部署本身。简而言之,持续交付确保了交付的代码尽可能容易和快速地运行,但需要有人批准并推动发布或更新到生产环境。

;什么是持续部署?

;连续部署将自动将测试代码推送到生产环境中。基于持续交付的优势,它被认为是CI/CD过程的下一阶段。简而言之,没有按需发布产品,这意味着需要人工干预。相反,代码被集成到发布中,然后测试被集成到过程中。

;这种自动化可以减轻超负荷运行团队的负担,并且由于测试集成到所有流程中,因此更容易发现问题并尽快解决问题。它还确保验证代码更改和将其投入生产之间没有延迟。应该注意的是,测试和监视对于连续部署更为重要,因为它们会自动投入生产。

;如何区分CI/CD中的连续交付和连续部署

;在说出这两个词后,持续交付和持续部署之间的区别显而易见。连续配送就像让达美乐的配送员把披萨送到你家门口。在吃之前,你应该检查比萨的成分和质量。连续部署就像有一条Damel传送带,定期给你送一份披萨。披萨从一开始就受到监控,以确保它满足您的所有期望,并在质量、成分和口味方面发生变化。

;然而,当一个平台承诺提供CI/CD而没有详细描述时,您如何判断它是提供持续交付还是持续部署?以下是一些区分它们的提示:

;如果平台描述为“是”,则系统将构建“可部署的代码;为了使过程自动化,它提供连续交付。例如,Spinnaker和AWS CodeBuilder

;如果平台描述包括整个CI/CD过程中的测试和监控,则意味着提供了持续部署。例如,Azure DevOps和Red Hat OpenShift Io(Red Hat现在是IBM旗下的公司)。

;如果平台的描述是持续集成,但它也可以实现自动代码准备和自动发布,那么它很可能提供持续部署。最著名的例子是Jenkins,您可以使用它来自动化CI/CD过程中的每个阶段。

;如果没有明显的术语可以提供线索,这些CI/CD平台可能会提供持续部署。

;重新定义连续交付

;如果你关注行业分析师和趋势,你会发现自动化无处不在,DevOps流程也不例外。尽管在严格监管下很难在行业内持续部署,但当前的CI/CD平台更倾向于提供CI/CD(持续部署),而不是CI/CD。例如,当Gartner使用“持续交付”;他们

相关资讯:
农产品电子商务向企业个人农产品电子贸易方向发展的效益

农产品电子商务向企业个人农产品电子贸易方向发展的效益

查看
Web 3.0技术的基本方向

Web 3.0技术的基本方向

查看
认知

认知

查看
面向对象的

面向对象的

查看
2018-12-25

2018-12-25

查看