Skip to content

Add settings to allow merge without pipeline

What does this MR do and why?

Add settings to allow merge without pipeline

Split out of !135276 (closed), as it was getting too large and we should start getting parts of this merged. This only adds a feature flagged project setting (it does not implement the updated mergeability check).

When "Pipelines must succeed" is selected, it is currently not possible to merge without a pipeline. This includes cases where the configuration is technically valid, but the pipeline is intentionally not created, such as:

  • pipeline was omitted because no jobs matched rules and only/except
  • pipeline was omitted via workflow:rules
  • there was no .gitlab-ci.yml

Changing this behavior is not backwards-compatible, because there is no way of knowing if an external CI system is running for a given change. So we add a project setting instead.

See #334281

Changelog: changed

Screenshots or screen recordings

Screenshots are required for UI changes, and strongly recommended for all other merge requests.

Before After

How to set up and validate locally

There's not much to test here. This setting doesn't do anything yet.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Hordur Freyr Yngvason

Merge request reports