📜  GitLab CI-简介(1)

📅  最后修改于: 2023-12-03 15:30:58.423000             🧑  作者: Mango

GitLab CI-简介

GitLab CI 是 GitLab 提供的持续集成与部署(Continuous Integration and Deployment)服务。其可以帮助开发人员在写完代码并 push 到 GitLab 仓库后,自动执行代码检查、测试、构建、部署等操作,以确保代码的质量和部署的稳定性。

GitLab CI 的优点
  • 集成度高:与 GitLab 无缝集成,无需搭建额外的服务器;
  • 配置简单:采用 .gitlab-ci.yml 配置文件,易于理解和维护;
  • 执行快速:并行执行,分布式构建,提高效率;
  • 灵活可扩展:支持自定义命令、自定义镜像等扩展能力;
  • 开源免费:GitLab CI 与 GitLab 一样,全部开源免费,无需额外的费用。
GitLab CI 的组成

GitLab CI 包含以下几个组成部分:

  • Runner:负责执行 .gitlab-ci.yml 中定义的任务;
  • Coordinator:负责任务的协调和分配;
  • GitLab CI Server:用于管理 Runner 和协调器。
GitLab CI 的使用流程

GitLab CI 的使用流程如下:

  1. 安装 Runner:在所需机器上安装 Runner,并将其注册到 GitLab CI Server;
  2. 配置 .gitlab-ci.yml:在 GitLab 项目中加入 .gitlab-ci.yml 配置文件,并定义各种任务;
  3. 推送代码:将代码 push 到 GitLab 仓库;
  4. 触发任务:GitLab CI Server 接收到 push 事件后,分派任务到 Runner 上执行;
  5. 查看结果:在 GitLab CI Server 上查看任务执行情况和日志。
GitLab CI 的示例配置
# 指定 Runner 所需的环境镜像
image: node:8

# 定义任务
stages:
  - test
  - build
  - deploy

# 定义 test 阶段任务
test:
  stage: test
  script:
    - npm install
    - npm run test

# 定义 build 阶段任务
build:
  stage: build
  script:
    - npm run build

# 定义 deploy 阶段任务
deploy:
  stage: deploy
  script:
    - scp -r ./build user@example.com:/var/www/html

以上示例配置定义了三个阶段(test、build、deploy),分别包含不同的任务。其中,test 阶段用于执行代码测试,build 阶段用于构建代码,deploy 阶段用于部署构建后的代码。每个任务中的 script 字段则定义了具体要执行的命令。

总结

通过使用 GitLab CI,我们可以轻松做到持续集成与部署,提高代码的质量和部署的稳定性,并能够极大地简化和加速我们的开发流程。