Implement block pipl users
What does this MR do and why?
This MR introduces the blocking of PIPL-Compliant users after the notice period is over.
The detailed changes are the following:
- Introduce a cron worker that fetches the eligible users and blocks them using the internal admin user
- Introduce a service that validates and initiates the user blocking
- Add a user note in order to ease the work of our support engineers
- A custom attribute is added since we use the already-existing
::Users::BlockService
Issue: https://gitlab.com/gitlab-org/gitlab/-/issues/455708
The user deletion will be implemented in a follow-up MR
References
Please include cross links to any resources that are relevant to this MR. This will give reviewers and future readers helpful context to give an efficient review of the changes introduced.
MR acceptance checklist
Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Edited by Panos Kanellidis