Added new table MemberApprovals and corresponding associations
What does this MR do and why?
This Merge Request introduces a new table for managing member additions and promotion within groups and projects. The changes include the creation of a new MemberApproval
model and its associated database table, along with necessary associations and foreign keys to integrate it seamlessly with our existing models: Member
, User
, Project
models.
Key Changes:
-
New Table Creation -
member_approvals
:- The
member_approvals
table is added to store approval requests for new members. It includes fields for tracking the member, source (group or project), the user who requested the addition, the admin who approved it, and the approval status and time for approval/rejection.
- The
-
Model Integration:
- Associations are established between
MemberApproval
and other models (Member
,User
,Project
) to ensure coherent data flow and integrity.
- Associations are established between
ref: https://gitlab.com/gitlab-org/gitlab/-/issues/433171
How to set up and validate locally
Numbered steps to set up and validate the change are strongly suggested.
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.
Edited by Suraj Tripathi