如何在当前阶段在Gitlab中完成任何工作时触发下一阶段

时间:2020-07-28 08:24:03

标签: continuous-integration gitlab directed-acyclic-graphs

在Gitlab CI管道中,当我的工作任何在当前阶段完成时,我想进入下一阶段。另外,我想传递上一阶段特定工作的工件。

例如

stages:
  - Generate version
  - Build


.version:
  stage: Generate version
  when: manual
  before_script:
    - mkdir -p envs
  artifacts:
    name: version
    paths:
      - envs/


Patch:
  extends: .version
  script:
    - echo "1.0.1" > envs/version

Minor:
  extends: .version
  script:
    - echo "1.1.0" > envs/version

Major:
  extends: .version
  script:
    - echo "2.0.0" > envs/version

Build:
  needs:
    - Major
    - Minor
    - Patch
  when: always
  stage: Build
  script:
    - cat envs/version

我只想运行一项作业,并将工件从该作业传递到Build作业。 仅供参考:这个示例非常简单(可以有多个组)。

0 个答案:

没有答案