Gitlab CI/CD介绍

基本概念

GitLab CI/CD(持续集成/持续部署)流水线是GitLab平台提供的一项强大功能,旨在通过自动化构建、测试和部署过程,提高开发团队的效率和软件发布的质量。

CI(Continuous Integration) :持续集成,是指频繁地将代码集成到主干,通过自动化测试来确保集成的代码的稳定性。

CD(Continuous Delivery/Deployment) :持续交付/部署,可以看作是持续集成的下一步。持续交付是指在持续集成的基础上,不仅会自动构建和测试应用,还可以手动触发部署流程进行应用部署;而持续部署则更进一步,其部署过程是自动触发的。

核心功能

自动化构建 :每次代码提交或合并请求被接受时,GitLab CI/CD都会自动触发构建过程,确保代码可以成功编译。可以理解为GitLab自动 提交的代码进行构建、测试 等。

自动化测试 :在构建完成后,流水线会自动运行测试脚本,包括单元测试、集成测试等,以确保代码的质量和稳定性。

自动化部署 :测试通过后,流水线可以自动将应用部署到指定的环境(如开发环境、测试环境、生产环境)中,大大缩短了从代码提交到生产环境的时间。

现实使用并非如此

一般我们将代码提交到Git,已经经过本地实际环境测试,使用Git也只是进行代码托管、版本控制、代码审查等操作,不曾关心代码在Gitlab上的构建、测试等;再者,由于提交的依赖、资源、缓存不足、并发冲突等原因,可能导致CI/CD流水线错误, 该类错误一般由于使用的少,具体原因也很难分析。所以,一般在使用Gitlab时选择关闭CI/CD功能

CI/CD流水线错误实例

关闭CI/CD功能:

结果:

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