使用触发器、规则和自定义配置变量从多项目中的上游管道触发 gitlab 下游管道

Trigger gitlab downstream pipeline from a upstream pipeline in a multi-project using trigger, rules and custom configuration variables

我有这样的场景,我想 运行 只有在 .pre 阶段设置了 $FLAG 变量时才在构建阶段触发。但是,build 阶段从未 运行s.

我应该如何有条件地触发下游管道?

checkArtifactPresent:
  stage: .pre
  script:
    - >
      set +e;
      if curl -s -S -f $NEXUS_RAW_PICKER_REPOSITORY/${PRODUCT_FLAVOR}/${PRODUCT_FLAVOR}-${BUILD_TYPE}v${PICKER_TEMPLATE_TAG}.apk --output ${PRODUCT_FLAVOR}-${BUILD_TYPE}v${PICKER_TEMPLATE_TAG}.apk;
      then
        export FLAG= true;
      fi

buildArtifact:
  stage: build
  only:
   variables:
     - $FLAG
  trigger:
   project: dev/project_name
   strategy: depend

你可以使用 Gitlab web api for Triggering pipelines through API

您可以使用触发变量。您可以应用条件,然后触发下游作业。

在这里你可以找到一个简单的例子:

https://docs.gitlab.com/ee/ci/triggers/#making-use-of-trigger-variables