.gitlab-ci 阶段执行顺序

Bob*_*421 2 gitlab gitlab-ci gitlab-ci-runner

我有这个 .gitlab-ci.yml 文件:

stepA:
  script:
    - echo "A"
deploy:
  script:
    - echo "1"
stepB:
  script:
    - echo "B"
Run Code Online (Sandbox Code Playgroud)

如何设置应该首先运行哪个阶段?一些作业可以由多个 gitlab runner 并行运行。我只想确保在运行部署阶段之前完成步骤 A 到 B

Spe*_*ark 5

这正是stages它的目的。在实际描述“工作”时,您在这里使用了“阶段”一词。

同一阶段的作业可能会并行运行(如果您有运行器支持),但阶段会按顺序运行。

首先在 的顶层定义您的 2 个阶段.gitlab-ci.yml

stages:
  - build
  - dist
Run Code Online (Sandbox Code Playgroud)

然后在每个作业上,指定它所属的阶段:

stepA:
  stage: build
  script:
    - echo "A"
deploy:
  stage: dist
  script:
    - echo "1"
stepB:
  stage: build
  script:
    - echo "B"
Run Code Online (Sandbox Code Playgroud)

现在stepAstepB将首先运行(以任何顺序甚至并行),然后deploy是第一阶段成功。