Improve location/organization of repository maintenance actions/settings

Release notes

Problem to solve

Follow-up from the discussion in #357680 (comment 956842783).

Today the actions/settings to maintain and cleanup the repository are scattered, which can lead to user confusion and lack of discoverability. An example of this is Docs feedback: Add housekeeping to the measures... (#217453 - closed), where a user wasn't aware that the Housekeeping action in Settings > General would reduce the repository size, even when looking at the docs.

There's an opportunity to consolidate these settings. The current state:

  1. The housekeeping docs say that it only performs housekeeping tasks on the Git repository, nothing else. Therefore, it's odd that housekeeping is located in the General project settings.
  2. On that page, it also says that instance-level settings for repository housekeeping are located in Admin > Settings > Repository > Repository maintenance. This is different from the project-level settings.
  3. Finally, there's the Repository > Repository cleanup section in the project settings to run git filter-repo.
  4. We recently added a new “Recalculate repository size” in Settings > Usage Quotas, which doesn't help reduce the repository size but simply updates the calculated size. Still, this action is tightly related to maintaining/cleaning up the repository.

Proposal

  • Rename "Settings > Repository > Repository cleanup" to Settings > Repository > Repository maintenance
    • This aligns the location to be similar to the Admin area.
    • Decision informed by design decisions made in https://gitlab.com/gitlab-org/gitlab/-/issues/450701+
  • Move "Housekeeping" and "Pruning unreachable objects" to "Repository maintenance"
    • Add information in "Settings > General" to say those settings have moved
  • Update documentation to reflect the consolidation of the settings -https://docs.gitlab.com/ee/user/project/repository/reducing_the_repo_size_using_git.html
    • Manual trigger section inhttps://docs.gitlab.com/ee/administration/housekeeping.html

image

To address navigating to this area from other areas like "Usage quotas", it could be linked with a button saying something like "Manage repository storage" or "Maintain repository storage" (UI text to be determined). Examples of how this could look in alerts could be:

Project overview Usage quota
image image

Intended users

  • Delaney (Development Team Lead)
  • Sidney (Systems Administrator)

Feature Usage Metrics

Edited Apr 12, 2024 by Michael Le
Assignee Loading
Time tracking Loading