GitLab-CI简介

概述

持续集成(CI)和 持续交付(CD) 是一种流行的软件开发实践,每次提交都通过自动化的构建(测试、编译、发布)来验证,从而尽早的发现错误。

持续集成实现了DevOps, 使开发人员和运维人员从繁琐的工作中解放出来。另外,这种形式极大地提高了开发者的开发效率和开发质量。

持续集成有多种工具,如Jenkins. GitLab内置了GitLab-CI,通过配置一段YAML脚本来实现持续集成.

功能

持续集成可以实现的功能:

  • 代码审核: 自动化代码规范审查, 甚至代码质量检查
  • 自动化测试: 单元测试, 功能测试和验收测试
  • 编译发布: 将源代码编译成可执行程序, 并将程序上传到托管发布平台实现自动发布
  • 构建部署: 通过构建Docker镜像, 或登录远程服务器执行相关部署命令和脚本, 实现自动化部署

原理

GitLab-CI 检测每次代码变动, 通过.gitlab-ci.yml脚本执行构建命令, 将命令发布到GitLab-Runners(运行机)上, 进而执行命令.

GitLab-Runners 基于Docker执行持续集成的每项任务, 这样就解决了环境依赖问题.

GitLab-Runners把实时将执行结果输出到GitLab网页上, 任务执行完后, 通过徽章标记和邮箱告知执行结果.

下一章: [[GitLab 快速开始]]

相关推荐
木二_16 小时前
附058.Kubernetes Gitea部署
ci/cd·kubernetes·gitea
慧一居士2 天前
Gitea和GitLab对比
运维·gitlab·gitea
研发小能2 天前
提效安全双平衡:CI/CD工具该选谁?流水线产品评测
ci/cd·持续集成·持续集成平台·持续集成产品·流水线工具
企鹅郁金香2 天前
Gitlab和Gerrit部署后的工作(二)
数据库·gitlab·gerrit域名无法修改·激活gitlab·gitlab注册ldap·nginx反向代理gitlab·nginx反向代理gerrit
oMcLin2 天前
如何在Rocky Linux 8.5上部署并优化Jenkins流水线,支持跨平台CI/CD自动化与容器化构建?
linux·ci/cd·jenkins
无心水2 天前
【分布式利器:腾讯TSF】7、TSF高级部署策略全解析:蓝绿/灰度发布落地+Jenkins CI/CD集成(Java微服务实战)
java·人工智能·分布式·ci/cd·微服务·jenkins·腾讯tsf
oscar9992 天前
Katalon与CI_CD集成:让自动化测试融入持续交付流水线
ci/cd·katalon
一条闲鱼_mytube2 天前
CI/CD 监控指南:让流水线透明可控
ci/cd
oMcLin3 天前
如何在 Ubuntu 22.04 上部署并优化 Jenkins 2.x 流水线,提升持续集成与自动化测试的效率?
ubuntu·ci/cd·jenkins
卓码软件测评3 天前
第三方CMA.CNAS软件评测机构【深入理解Apifox的数据模型:定义和管理API数据结构】
测试工具·ci/cd·测试用例