什么是CICD?
在软件开发中经常提到
持续集成持续集成
(CI)和
连续交付连续交付
(CD)这些条款。
但是,它们的真正含义是什么?
在谈论软件开发时,经常提到
持续集成持续集成
(CI)和
连续交付连续交付
(CD)这些条款。
但是,它们的真正含义是什么?
本文介绍了这些以及其他相关术语背后的含义。
连续测试连续测试
和
持续部署持续部署
。
摘要
工厂装配线可快速,自动且反复地从原材料生产消费品。
类似地,软件交付管道以快速,自动化和可重复的方式从源代码生成启动编译。
如何执行此操作的一般设计称为“连续交付”(CD)。
启动组装线的过程称为连续集成(CI)。
确保质量的过程称为“连续测试”,而向用户提供最终产品的过程称为“连续实施”??。
一些专家使一切变得简单,流畅和高效。这些人
DevOps运维开发
从业者
“继续”是什么意思?
“连续的”用于描述此处提到的各种过程的实践。
这意味着它是“始终运行”,而不是“始终运行”。
在软件开发领域,还包括一些基本概念/最佳实践。
这些如下:
频繁发射
持续实践的目标是确保可以经常交付高质量的软件。
此处的交付频率是可变的,可以由开发团队或公司定义。
某些产品可能在第一季度,每月,每周或一天足够频繁地交付。
对于其他人,一天可以多次交付。
所谓的持久性还具有“按需”方面。
最终目标是相同的。以可再现和可靠的过程为最终用户提供高质量的软件更新。
在许多情况下,只需很少或没有用户交互或知识(考虑设备更新)即可完成此操作。
自动化流程
实现此频率的关键是使用自动化过程来处理软件生产的所有方面。
这可能包括编译,测试,分析,版本控制和实现。
重复
:如果自动化过程始终使用相同的输入,则该过程必须是可重复的。
换句话说,使用代码的历史版本作为输入可获得相同的结果。
这也意味着存在具有相同版本的外部依赖项(也就是说,它不会创建此版本代码中使用的其他工件)。
理想情况下,这还意味着可以对管道中的流程进行版本控制和重建(请参见下文)。
DevOps讨论)。
快速迭代
“快速”在这里是一个相对术语,但是无论软件更新/发布的频率如何,预期的连续过程都可以确保有效地交付源代码。
大多数工作是通过自动化完成的,但是自动化过程仍然很慢。
例如,对于每天需要多次发布候选更新的产品,需要1轮
集成测试集成测试
持续集成持续集成
(CI)和
连续交付连续交付
(CD)这些条款。
但是,它们的真正含义是什么?
在谈论软件开发时,经常提到
持续集成持续集成
(CI)和
连续交付连续交付
(CD)这些条款。
但是,它们的真正含义是什么?
本文介绍了这些以及其他相关术语背后的含义。
连续测试连续测试
和
持续部署持续部署
。
摘要
工厂装配线可快速,自动且反复地从原材料生产消费品。
类似地,软件交付管道以快速,自动化和可重复的方式从源代码生成启动编译。
如何执行此操作的一般设计称为“连续交付”(CD)。
启动组装线的过程称为连续集成(CI)。
确保质量的过程称为“连续测试”,而向用户提供最终产品的过程称为“连续实施”??。
一些专家使一切变得简单,流畅和高效。这些人
DevOps运维开发
从业者
“继续”是什么意思?
“连续的”用于描述此处提到的各种过程的实践。
这意味着它是“始终运行”,而不是“始终运行”。
在软件开发领域,还包括一些基本概念/最佳实践。
这些如下:
频繁发射
持续实践的目标是确保可以经常交付高质量的软件。
此处的交付频率是可变的,可以由开发团队或公司定义。
某些产品可能在第一季度,每月,每周或一天足够频繁地交付。
对于其他人,一天可以多次交付。
所谓的持久性还具有“按需”方面。
最终目标是相同的。以可再现和可靠的过程为最终用户提供高质量的软件更新。
在许多情况下,只需很少或没有用户交互或知识(考虑设备更新)即可完成此操作。
自动化流程
实现此频率的关键是使用自动化过程来处理软件生产的所有方面。
这可能包括编译,测试,分析,版本控制和实现。
重复
:如果自动化过程始终使用相同的输入,则该过程必须是可重复的。
换句话说,使用代码的历史版本作为输入可获得相同的结果。
这也意味着存在具有相同版本的外部依赖项(也就是说,它不会创建此版本代码中使用的其他工件)。
理想情况下,这还意味着可以对管道中的流程进行版本控制和重建(请参见下文)。
DevOps讨论)。
快速迭代
“快速”在这里是一个相对术语,但是无论软件更新/发布的频率如何,预期的连续过程都可以确保有效地交付源代码。
大多数工作是通过自动化完成的,但是自动化过程仍然很慢。
例如,对于每天需要多次发布候选更新的产品,需要1轮
集成测试集成测试
