Bridge job in older pipeline cancelled by new pipeline


For our e2e testing, we have a child pipeline that contains build, deploy and testing jobs. This child pipeline is triggered by a bridge job (see definition below) with a resource_group, so as to avoid concurrency.

However, if we run the pipeline twice (parent-pipeline-1 and parent-pipeline-2), the bridge job in parent-pipeline-1 becomes “cancelled” even though the child pipeline continues running, and the bridge job in parent-pipeline-2 becomes active. This is wrong for two reason:

  1. The bridge job in parent-pipeline-2 shouldn’t have started running since the resource_group is locked.
  2. The bridge job in parent-pipeline-1 shouldn’t have been cancelled.

We also tried this without a resource_group defined and the same happened. Point number 2 shouldn’t have happened in that case either.

Gitlab version: 15.3.3

Bridge job definition:

  stage: e2e
    - if: '$CI_COMMIT_MESSAGE =~ /run-ci-e2e/'
    include: e2e_testing/.gitlab-ci.child.yml
    strategy: depend
  resource_group: e2e-ci
1 Like