Skip to content

Wrap the approvals required in a fallback rule

What does this MR do?

This allows us to treat the values from Project#approvals_before_merge and MergeRequest#approvals_before_merge the same way as other approval rules.

It also makes sure the minimum approvals required in this case, is equal than or more what was defined on a single rule in the project if there was a single rule. If there was no single rule, we use the approvals_before_merge attribute of Project

This is required to keep approvals working for users on GitLab Starter, those are only allowed to use 1 approval rule, that rule could be overridden in the merge request itself. It they want to override a project rule without selecting users, we need to correctly fall back to that.

What are the relevant issue numbers?

This should help @pslaughter in https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/9488/

He discovered the regression there

Does this MR meet the acceptance criteria?

Edited by Bob Van Landuyt

Merge request reports