Multi-Project Pipeline: Upstream pipeline should only pass if downstream pipelines do

I have setup a multi-project pipeline with the following yaml:

downstream:
  stage: test
  except:
    - main
  variables: 
    CI_SCRIPTS_BRANCH: $CI_COMMIT_BRANCH
  trigger: flow-systems/flow-cloud/template/go-service
  allow_failure: false
  • What are you seeing, and how does that differ from what you expect to see?

It runs perfectly in respects but one: The upstream pipeline passes as soon as the downstream pipeline is triggered, rather than - as I would expect - waiting for the downstream pipeline to pass.

  • Consider including screenshots, error messages, and/or other helpful visuals

  • What version are you on? Are you using self-managed or GitLab.com?
    • gitlab.com GitLab Enterprise Edition 14.9.0
    • Runner (Hint: /admin/runners):
Running with gitlab-runner 14.8.0~beta.44.g57df0d52 (57df0d52)
  on blue-3.shared.runners-manager.gitlab.com/default zxwgkjAP
  • What troubleshooting steps have you already taken? Can you link to any docs or other resources so we know where you have been?

As the above yaml shows, I have tried setting allow_failure: false even though I think this should be the default value. This has not helped.

Hi @sirockin welcome to the forum!

I think you want to use strategy: depend with the trigger so that job mirrors status of the downstream pipeline.

I hope this helps!

-James H, GitLab Product Manager, Verify:Pipeline Execution

1 Like

Thank you, James. That works like a dream.

Great product, thanks!

1 Like