workflow

控制何时创建流水线,并设置流水线级别的配置。

支持: rules、rules:variables、rules:auto_cancel、name、auto_cancel:on_new_commit、auto_cancel:on_job_failure

示例

流水线名称

workflow:
  name: "E2E Test Pipeline"

job:
  script: echo "job"

仅在默认分支上运行

workflow:
  rules:
    - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH

job:
  script: echo "job"

按条件设置变量

workflow:
  rules:
    - if: $CI_PIPELINE_SOURCE == "merge_request_event"
      variables:
        DEPLOY_ENV: staging
    - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH

job:
  script: echo "job"

新提交时自动取消可中断作业

workflow:
  auto_cancel:
    on_new_commit: interruptible

job:
  interruptible: true
  script: sleep 60

通过 rules 自动取消

workflow:
  rules:
    - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
      auto_cancel:
        on_new_commit: interruptible

job:
  script: echo "job"