Inactive project deletion (FREE SELF)
On self-managed GitLab, by default this feature is not available. To make it available, ask an administrator to
enable the feature flag named
On GitLab.com, this feature is not available. This feature is not ready for production use.
Administrators of large GitLab instances can find that over time, projects become inactive and are no longer used. These projects take up unnecessary disk space. With inactive project deletion, you can identify these projects, warn the maintainers ahead of time, and then delete the projects if they remain inactive. When an inactive project is deleted, the action generates an audit event that it was performed by the first active administrator.
Configure inactive project deletion
You can configure inactive projects deletion or turn it off using either:
The following options are available:
Delete inactive projects (
delete_inactive_projects): Enable or disable inactive project deletion.
Delete inactive projects that exceed (
inactive_projects_min_size_mb): Minimum size (MB) of inactive projects to be considered for deletion. Projects smaller in size than this threshold aren't considered inactive.
Delete project after (
inactive_projects_delete_after_months): Minimum duration (months) after which a project is scheduled for deletion if it continues be inactive.
Send warning email (
inactive_projects_send_warning_email_after_months): Minimum duration (months) after which a deletion warning email is sent if a project continues to be inactive. The warning email is sent to users with the Owner and Maintainer roles of the inactive project. This duration must be less than the Delete project after (
For example (using the API):
In this scenario, when a project's size is:
- Less than 50 MB, the project is not considered inactive.
- Greater than 50 MB and it is inactive for:
- More than 6 months, a deletion warning is email is sent to users with the Owner and Maintainer role on the project with the scheduled date of deletion.
- More than 12 months, the project is scheduled for deletion.
Using the API
You can use the Application settings API to configure inactive projects.
Using the GitLab UI
Introduced in GitLab 15.1.
To configure inactive projects with the GitLab UI:
- On the top bar, select Menu > Admin.
- On the left sidebar, select Settings > Repository.
- Expand Repository maintenance.
- In the Inactive project deletion section, configure the necessary options.
- Select Save changes.
Determine when a project was last active
You can view a project's activities and determine when the project was last active in the following ways: