Enforce retention policy definition

What does this MR do and why?

Enforce retention policy definition

  • Implements retention policy data model
  • Adds a test suite to check the model's correctness
  • Adds a test suite to enforce retention policy definition for GitLab tables
  • Implements declarative schema inclusions and exclusions to ensure that addition and removal of schemas to/from the DB are captured
  • Implements a rake task to generate exclusions for existing tables (Temporary until they define their retention policy)

There will be a follow-up MR to introduce a Danger check that forbids new tables being added to the allowlist.yml file.

References

https://gitlab.com/gitlab-org/gitlab/-/work_items/601405

MR acceptance checklist

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

Merge request reports

Loading
Loading