Integrate group level to merge request level MR approval rules
Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.
Why are we doing this work
Users would like to integrate group-level MR approval settings into merge requests of children projects
Relevant links
Functional requirements
- Allow retrieving group-level approval rules via merge-request-level approval rules API
- Public endpoint
GET /api/:version/project/:id/merge_requests/:merge_request_id/approval_rules - Public endpoint
GET /api/:version/project/:id/merge_requests/:merge_request_id/approval_rules/:approval_rule_id
- Public endpoint
- Group-level approval rules should display when creating new MR and viewing existing MRr
- User can edit/delete group-level approval rules
Non-functional requirements
- [-] Documentation: Not needed as it is behind a feature flag
-
Feature flag: group_merge_request_approval_settings_feature_flag - [-] Performance:
-
Testing: Ensure that the merge request approval rules works with feature flag/licensed disabled
Implementation plan
-
backend Extend ApprovalStateto support group (ie.user_defined_rulesshould account for group approval rules)
graph LR
API::MergeRequestApprovalRules --> MergeRequest --> ApprovalState
ApprovalState --> ApprovalMergeRequestRule
ApprovalState --> ApprovalProjectRule
ApprovalState --> ApprovalGroupRule
Edited by 🤖 GitLab Bot 🤖