Skip to content

Add a new `delayed_group_deletion` application setting

Problem to solve

As part of &7568 (closed) we want to enable administrators to disable group & project delayed deletion without setting deletion_adjourned_period to 0 and thus overriding the user's choice. Currently the only way to disabled delayed deletion.

For additional context please view the frontend issue #352960 (closed).

Proposal

Add a new application / instance setting to enable / disable group delayed deletion.

Implementation plan

backend estimated weight of 2️⃣ / 3️⃣

  1. Add a new instance setting for delayed_group_deletion (default true) that is seperate from delayed_project_deletion. This is needed because deletion_adjourned_period should only be greater than 1 and thus no longer be used to check if delayed group deletion should be enabled / disabled. We also don't want to override the user specified deletion_adjourned_period even when the user opted to None, delete immediately. Additional context #348332 (comment 840063606).
  2. Add a migration plan to set the value of delayed_group_deletion to deletion_adjourned_period > 0.
  3. When deletion_adjourned_period is set, also set the delayed_group_deletion to deletion_adjourned_period > 0.
  4. Update the Remove group button under Group > Advanced Settings to only show the delayed deletion message and modal when both delayed_group_deletion is true and deletion_adjourned_period is >0. Currently group delayed deletion only depends on deletion_adjourned_period > 0.
  5. Update the applications settings API doc to add delayed_group_deletion setting.
Edited by Jiaan Louw