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功能:

结果:

相关推荐
snow@li12 小时前
服务器运维:K3S 下 Jenkins ↔ GitLab 的 CI/CD 闭环 / 访问成功
运维·gitlab·jenkins
lbb 小魔仙1 天前
Python 项目 CI/CD 实战:用 GitHub Actions 搭建自动化测试、覆盖率与发布流水线
python·ci/cd·github
cindershade1 天前
报错之后,谁来证明它属于这次发布?前端错误治理的证据链设计
ci/cd·前端工程化
迷途呀2 天前
CI/CD 自动化部署实践:让代码提交后自动上线
linux·运维·nginx·ci/cd·自动化
旧梦星轨2 天前
Git Flow 工作流实践
git·gitee·gitlab·github
旧梦星轨3 天前
Github Flow 与 Gitlab Flow工作流实践解读
gitlab·github
嘴贱欠吻!3 天前
如何成为 CJMP 贡献者:AtomGit贡献流程与要求
git·ci/cd
hasty3 天前
一个 Git 分支名,如何穿透到 CI Runner 的 Shell?
git·ci/cd
thesky1234563 天前
智能体面试准备(八十九):智能体生产环境持续交付与版本治理工程——Agent CI/CD、版本化与 Eval-Gated 发布
ci/cd·灰度发布·智能体·持续交付·版本治理·agent registry·版本化