Skip to content

Fix validation of dynamic child pipeline depenencies

What does this MR do?

Related to #209070 (closed)

This MR is a reimplementation of the previously merged !27916 (merged) which was then reverted in !28904 (merged) due to a regression on child-parent pipeline behavior.

The cause of the bug that made us revert the previous MR was due to the fact that the include: feature can accept:

  1. single string
  2. array of strings
  3. array of hashes

The validation that was implemented against the job dependencies, in the context of dynamic parent-child pipelines was only considering trigger:include: to be an array of hashes.

This cause the new feature validation to work for some of dynamic child pipelines but to break for existing behavior on standard parent-child pipelines.

Due to the lack of other integration specs we did not catch the regression.

All missing specs have been added to this MR.

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • Label as security and @ mention @gitlab-com/gl-security/appsec
  • The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • Security reports checked/validated by a reviewer from the AppSec team
Edited by Fabio Pitino

Merge request reports