Backend: Wrong parent pipeline status when child pipeline contains optional manual jobs
Summary
When a child pipeline contains only optional (allow_failure: true
) manual jobs, which were not run yet, the status of the parent pipeline is set to failed
even though no jobs have failed.
Steps to reproduce
- Create parent pipeline
.gitlab-ci.yml
:
stages:
- trigger_pipeline
trigger_pipeline:
stage: trigger_pipeline
trigger:
include:
- local: .gitlab-ci-include.yml
strategy: depend
- Create child pipeline
.gitlab-ci-include.yml
:
stages:
- test
test:
stage: test
allow_failure: true
script:
- echo 1
rules:
- when: manual
Example Project
https://gitlab.com/sandra17/gitlab-ci-wrong-pipeline-status/
What is the current bug behavior?
The status of the parent pipeline is set to failed
.
What is the expected correct behavior?
The status of the pipeline should be set to passed
if no jobs have failed.
Acceptance criteria
- Test with
trigger:strategy:depend
and without.
Edited by James Heimbuck