持续集成与持续部署

持续集成与持续部署

1、介绍

持续集成CI:开发人员频繁的提交代码,并对提交进行自动化的验证

持续部署CD:基于CI,自动化的将代码部署到生产环境

2、持续集成的概念

持续集成的核心思想是:让开发人员频繁地将代码变更合并到共享的主干分支中,并通过自动化流程来快速验证这些变更的正确性。

CI不是一个工具,而是一套流程和实践,这套流程通常由一个CI服务器(如Jenkins、GitLab CI、GitHub Actions)来自动执行。其工作流程可以概括为以下几步:

频繁提交:开发人员每天至少一次,将完成的小功能代码提交到共享的代码仓库(如Git)的主干分支。

自动触发:每次代码提交都会自动触发CI服务器开始工作。

自动构建:CI服务器会拉取最新的代码,并将其编译、打包成可执行的软件(例如,将Java代码编译成Jar包)。

自动化测试:这是CI的灵魂。CI服务器会运行一套预先写好的自动化测试(包括单元测试、集成测试等),来验证新代码没有破坏现有功能。

生成报告:CI服务器会生成一份详细的报告,明确告知开发团队:本次构建成功还是失败。如果失败,具体是哪个测试用例没通过,哪段代码编译出错。

3、持续部署的概念

持续部署的核心流程

开发者提交代码到代码仓库。

持续集成流程自动触发:完成编译、打包和一系列自动化测试。

通过所有测试后,系统会自动、直接地将代码部署到生产环境。

整个过程完全由自动化流程驱动,"发布"这个动作不再是一个需要手动决策和执行的特殊事件,而是开发流程中一个自然而然的环节。

4、CI/CD带来的好处

CI/CD不仅仅是一套工具链,它更是一种能力。 它赋予组织:

快速交付价值的能力

高质量、低风险发布的能力

高效、愉悦的团队协作能力

5、CI/CD阶段组成

相关推荐
一战成名99617 小时前
AI 模型持续集成流水线:CANN 支持的 DevOps 最佳实践
人工智能·ci/cd·devops
我会一直在的17 小时前
Devps持续集成
git·ci/cd
池央2 天前
CANN oam-tools 诊断体系深度解析:自动化信息采集、AI Core 异常解析与 CI/CD 流水线集成策略
人工智能·ci/cd·自动化
池央3 天前
CANN GE 深度解析:图编译器的核心优化策略、执行流调度与模型下沉技术原理
人工智能·ci/cd·自动化
3GPP仿真实验室3 天前
【Matlab源码】6G候选波形:OFDM-IM 增强仿真平台 DM、CI
开发语言·matlab·ci/cd
小Tomkk3 天前
数据库 变更和版本控制管理工具 --Bytebase 安装部署(linux 安装篇)
linux·运维·数据库·ci/cd·bytebase
_运维那些事儿3 天前
VM环境的CI/CD
linux·运维·网络·阿里云·ci/cd·docker·云计算
木童6623 天前
Ruo-Yi 项目 CI/CD 详细部署文档
ci/cd
爬山算法4 天前
Hibernate(85)如何在持续集成/持续部署(CI/CD)中使用Hibernate?
java·ci/cd·hibernate
吹牛不交税4 天前
gitea安装windows并实现CICD持续集成部署
ci/cd·gitea