Add Merge requests section to the group settings

Proposal

Similar to the Disable self-approval at the instance level, this proposal is asking for a "Pipelines must succeed" checkbox in the group area that takes precedence over any project-level "Pipelines must succeed" checkboxes. This should go under the Group > Settings > General screen.

Implementation Plan

  1. Add a new Merge requests section to the group settings.
  2. Add a group setting for Pipelines must succeed using the shared cascading settings checkbox.
    • It should be enforced with a 🔒 if enforced by a parent group
  3. Add a group setting checkbox for Enforce for all subgroups and projects.
    • When checked, lock the setting.
    • When locked by a parent, don't show the checkbox.
  4. Update the project > merge request settings to be disabled and show a 🔒 when enforced.
    • When locked, disable both Pipelines must succeed and Skipped pipelines are considered successful.
    • Check that Skipped pipelines are considered successful is always false.
  5. Add specs for the group view and update project setting spec.
  6. Update documentation.
Edited by Nate Rosandich