The status of the manual parent trigger job is shown as successful even when a child pipeline failed

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

Summary

If when: manual is used in the trigger job of the parent pipeline, the status of the trigger job will be incorrectly shown as successful in several places of GitLab UI.

Steps to reproduce

  • create a child pipeline that will always fail, for instance:
test_job:
  script:
    - exit 1
  • in a parent pipeline, create a manual trigger job, for instance:
job:
  stage: test
  when: manual
  trigger:
    include:
      - project: 'path/to/project'
        file: '.gitlab-ci.yml'
    strategy: depend
  • run the parent pipeline, run the manual job
  • check the status of the pipeline and pay attention to the trigger job status

Example Project

What is the current bug behavior?

Status of the parent trigger job is shown as successful but the child pipeline is failed.

What is the expected correct behavior?

Status of the parent job should reflect the status of the child pipeline i.e. it should show failed if the child pipeline failed.

Relevant logs and/or screenshots

atanayno/test-parent-pipeline@5e92e1ce

pipeline_status_commits

atanayno/test-parent-pipeline!1 (closed)

pipeline_status_mr

https://gitlab.com/atanayno/test-parent-pipeline/-/pipelines

pipeline_status_pipelines

Output of checks

This bug happens on GitLab.com, also reproduced with a self-managed instance of GitLab 13.6.1.

Possible fixes

n/a

Edited by 🤖 GitLab Bot 🤖