Flowable:关于CICD持续集成部署

Posted fntp

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flowable:关于CICD持续集成部署相关的知识,希望对你有一定的参考价值。

Flowable(四):关于CICD持续集成部署

CI/CD 是一种通过在应用开发阶段引入自动化来频繁向客户交付应用的方法。

CI/CD 的核心概念是持续集成、持续交付和持续部署。

作为一个面向开发和运营团队的解决方案,CI/CD 主要针对在集成新代码时所引发的问题(亦称:“集成地狱”)。

具体而言,CI/CD 可让持续自动化和持续监控贯穿于应用的整个生命周期(从集成和测试阶段,到交付和部署)。

这些关联的事务通常被统称为"CI/CD 管道",由开发和运维团队以敏捷方式协同支持。

一、关于CI 持续集成(Continuous Integration)

Continuous Integration [kən’tɪnjʊəs] [ˌɪntɪ’ɡreɪʃn]

缩略词 CI / CD 具有几个不同的含义。

CI/CD 中的"CI"始终指:持续集成,英文全称:Continuous Integration,它属于开发人员的自动化流程。成功的 CI 意味着应用代码的新更改会定期构建、测试并合并到共享存储库中。该解决方案可以解决在一次开发中有太多应用分支,从而导致相互冲突的问题。

二、关于CD 持续交付或持续部署(Continuous Delivery 、Continuous Deployment)

CI/CD 中的"CD"指的是持续交付或持续部署,这些相关概念有时会交叉使用。两者都事与管道后续阶段的自动化相关,但它们有时也会单独使用,用于说明自动化程度。

关于持续交付

持续交付通常是指开发人员对应用的更改会自动进行错误测试并上传到存储库(如 GitHub 或容器注册表),然后由运维团队将其部署到实时生产环境中。这旨在解决开发和运维团队之间可见性及沟通较差的问题。因此,持续交付的目的就是确保尽可能减少部署新代码时所需的工作量。

关于持续部署

持续部署(另一种"CD")指的是自动将开发人员的更改从存储库发布到生产环境,以供客户使用它主要为了解决因手动流程降低应用交付速度,从而使运维团队超负荷的问题持续部署以持续交付的优势为根基,实现了管道后续阶段的自动化。

CI/CD 既可能仅指持续集成和持续交付构成的关联环节,也可以指持续集成、持续交付和持续部署这三项构成的关联环节。更为复杂的是,有时"持续交付"也包含了持续部署流程。

归根结底,我们没必要纠结于这些语义,您只需记得 CI/CD 其实就是一个流程(通常形象地表述为管道),用于实现应用开发中的高度持续自动化和持续监控。因案例而异,该术语的具体含义取决于 CI/CD 管道的自动化程度。许多企业最开始先添加 CI,然后逐步实现交付和部署的自动化(例如作为云原生应用的一部分)。

小结

CI/CD 流程持续自动化,以管道的视角来看待,就是一个能实现无缝衔接的高度自动化的可持续流程。
在面临责任分配制的集中式开发下,CI可以有效解决多分支代码合并带来的冲突问题,基于此解决方案,CD就是一个流程的演变,将一个工程开发的产出交付进行持续化的测试后推送到生产环境,降低部署工作量,再进而基于此,推动了持续自动化部署流程的演进,因此CI/CD整体可以视作一个自动化的流程。

以上是关于Flowable:关于CICD持续集成部署的主要内容,如果未能解决你的问题,请参考以下文章

Flowable:关于CICD持续集成部署

CICD:持续集成持续交付持续部署

云原生DevOps:CICD持续集成|交付|部署

61-CICD持续集成工具-Jenkins自动化部署JAVA程序

63-CICD持续集成工具-Jenkins结合Ansible实现自动化批量部署

60-CICD持续集成-Jenkins连接Gitlab资源并且自动部署上线全流程