夫天地者,万物之逆旅;光阴者,百代之过客。而浮生若梦,为欢几何?
架构师词条:持续集成(CI)和持续交付(CD)

持续集成(CI)

持续集成Continuous integration,英文缩写 CI,是一种软件开发实践,指团队开发成员经常(每次至少一次)将代码集成到主干,每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证。持续集成的目的是使得产品能够快速迭代,同时还能保持高质量。

要做到持续集成,至少应该满足以下要求:

1、版本控制系统

代码版本控制系统必不可少,我们需要可靠的方法来集中和保存项目的所有更改。


2、自动化构建工具

构建工具是持续集成的核心,它对源代码进行自动化编译、测试、代码检查,以及打包程序、部署(发布)到应用服务器上。从版本控制系统下载最新源代码后,所有的后续工作几乎都可以通过构建工具完成。


3、自动化测试

自动化测试是持续集成必不可少的一部分,自动化测试还包括单元测试、集成测试、系统测试、验收测试、性能测试等。

持续交付(CD)

持续交付 Continuous delivery,英文缩写 CD,是一种软件工程的手段,可以看作持续集成的下一步,旨在让软件在短周期内产出,确保软件随时可以被可靠地发布。其目的在于更快、更频繁地构建、测试以及发布软件。通过加强对生产环境的应用进行渐进式更新,这种手段可以降低交付变更的成本与风险。

持续部署

持续部署 Continuous deployment,英文缩写 CD,是持续交付的下一步,指的是代码经过验证后,自动部署到生产环境。

采用持续部署的前提是自动化测试的覆盖率足够高。 

采用持续部署的好处是能减少运维的工作量,缩短新特性从开发到实际交付的周期。

工具支持

Jenkins 

Travis 

Codeship 

Strider

GitLab CI

Continuum

CruiseControl

TeamCity

Bamboo

参考资料

持续集成、持续交付、持续部署(CI/CD)简介  

CI持续集成介绍  

持续集成CI/持续交付CD/持续部署   

简介持续集成(CI)以及相关工具推荐  

软件开发理论之持续集成(CI) 

开源软件库

作者:暗夜余晖

本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

0

支持

0

反对

posted @2020-2-27  拜读(617)

评论列表

评论内容:



喜欢请打赏

支付宝 微信

请放心支付