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
andonly/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.
-
I have evaluated the MR acceptance checklist for this MR.