Skip to content

BE changes, feature flagged: To always perform delayed deletion

What does this MR do and why?

This is the feature flagged, backend changes for #389557 (closed).

This is part of a deprecation, which we only plan to enable in 16.0, so this feature flag is going to remain disabled until 16.0

List of changes:

Currently, the instance setting for delayed deletion looks like this:


Our proposal in #389557 (closed), is to change this instance setting into


Which means that

  • delayed deletion should become the default for both groups and projects
  • there should be no option to customize this setting, except for customizing the retention period (7 days, in the picture)
  • there should be no option to enable immediate deletion (as of today, 0 days is not a permitted value, so immediate deletion cannot be configured at the instance level after this change is made, in any manner.)

This MR contains the BE changes to make this proposal a reality:

When the feature flag is enabled:

  • Delayed deletion will become the default for all groups and projects on self-managed (Premium+) and for groups and projects on .com that are Premium+
  • ApplicationSettingsController will no longer consider delayed_project_deletion and delayed_group_deletion as permitted params.
  • ApplicationSettings API will stop exposing delayed_project_deletion and delayed_group_deletion attributes.

Related frontend changes have not been done yet, but since these changes are behind a feature flag, it is safe to merge this alone.

Screenshots or screen recordings

Screenshots are required for UI changes, and strongly recommended for all other merge requests.

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.

Related to #389557 (closed)

Merge request reports