Skip to content

Prevent DAG builds to run after skipped need build

Furkan Ayhan requested to merge 31526-skip-if-needed-job-skipped into master

What does this MR do?

This MR is based on !22246 (merged).

This can not be merged until that is merged.


This MR fixes the bug stated in #31526 (closed).

When a needed job is skipped, the next job must be skipped too. That's because we don't want a job to run if dependent job does not run.

Please read before reviewing

I had to change Ci::PipelineProcessing::LegacyProcessingService, because I had to use aggregated_needs_names in Ci::ProcessBuildService.

For the same reason, I also implemented an ugly test case for Ci::ProcessBuildService.

However, after implementing scheduling_type storing, we will able to use it directly, and will not need aggregated_needs_names in Ci::ProcessBuildService.

I am thinking to create a follow-up issue to use scheduling_type and remove aggregated_needs_names from these changes.

Screenshots

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 Furkan Ayhan

Merge request reports