PoC: Separate Access Model for Deployment Approval (Base Modeling)
What does this MR do and why?
This MR is a PoC that represents the backend implementation for Deployment Approval Rules. It's for giving a high-level overview of the entire implementation. This is NOT FOR MERGE.
Related #345678 (closed)
The approach
So the idea is to introduce the ProtectedEnvironment::ApprovalRule
model to define who can approve/reject a deployment. The functionality is identical with ProtectedEnvironment::DeployAccessLevel
model, except the following points:
-
ProtectedEnvironment::ApprovalRule
has FK toDeployments::Approval
, meaning we record "who signed-off in which rule". This is useful to track which rule doesn't have sufficient approval.
Screenshots or screen recordings
These are strongly recommended to assist reviewers and reduce the time to merge your change.
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.