返回

Gitlab CICD自动构建- .gitlab-ci.yml详细配置解读

前端

前言

Gitlab CI/CD 是一个开源的持续集成和持续交付工具,可以帮助开发团队自动化构建、测试和部署过程。.gitlab-ci.yml 文件是 Gitlab CI/CD 的配置文件,它定义了构建、测试和部署的步骤。

.gitlab-ci.yml 文件可以放在项目的根目录下,也可以放在项目的任何子目录下。如果放在子目录下,那么该子目录下的所有文件都将被视为该项目的构建工件。

.gitlab-ci.yml 文件的语法很简单,它由一系列键值对组成。键是构建步骤的名称,值是构建步骤的配置选项。

.gitlab-ci.yml 文件的语法

.gitlab-ci.yml 文件的语法如下:

stages:
  - build
  - test
  - deploy

build:
  script:
    - echo "Building the project"
    - make build

test:
  script:
    - echo "Testing the project"
    - make test

deploy:
  script:
    - echo "Deploying the project"
    - make deploy

在上面的示例中,.gitlab-ci.yml 文件定义了一个名为 "build" 的构建阶段,一个名为 "test" 的测试阶段和一个名为 "deploy" 的部署阶段。

每个阶段都包含一个名为 "script" 的键,其值是一个包含构建、测试或部署步骤的数组。

.gitlab-ci.yml 文件的配置选项

.gitlab-ci.yml 文件的配置选项有很多,这里列出一些常用的配置选项:

  • image: 指定构建镜像。
  • services: 指定构建过程中需要使用的服务。
  • variables: 指定构建过程中需要使用的变量。
  • cache: 指定构建过程中需要缓存的文件。
  • artifacts: 指定构建过程中需要保存的工件。
  • rules: 指定构建阶段的执行规则。
  • retry: 指定构建阶段的重试策略。

.gitlab-ci.yml 文件的示例

以下是一个完整的 .gitlab-ci.yml 文件示例:

stages:
  - build
  - test
  - deploy

build:
  image: node:latest
  script:
    - echo "Building the project"
    - npm install
    - npm run build

test:
  image: node:latest
  script:
    - echo "Testing the project"
    - npm test

deploy:
  image: nginx:latest
  script:
    - echo "Deploying the project"
    - nginx -g "daemon off;"

在上面的示例中,.gitlab-ci.yml 文件定义了一个名为 "build" 的构建阶段,一个名为 "test" 的测试阶段和一个名为 "deploy" 的部署阶段。

"build" 阶段使用 node:latest 镜像,并执行 npm install 和 npm run build 命令。

"test" 阶段使用 node:latest 镜像,并执行 npm test 命令。

"deploy" 阶段使用 nginx:latest 镜像,并执行 nginx -g "daemon off;" 命令。

总结

.gitlab-ci.yml 文件是 Gitlab CI/CD 的配置文件,它定义了构建、测试和部署的步骤。.gitlab-ci.yml 文件的语法很简单,它由一系列键值对组成。键是构建步骤的名称,值是构建步骤的配置选项。.gitlab-ci.yml 文件的配置选项有很多,这里列出了一些常用的配置选项:image、services、variables、cache、artifacts、rules、retry。