Storage limit enforcement for groups
Description
In larger organizations or services like GitLab.com, it can become important to ensure shared resources are managed properly. For example in a larger org such as a Fortune 500 company, a central "CTO" office may run most of the software for the business. This is then consumed by a wide variety of independent teams. Since GitLab in this instance is operating as more of a shared service, it is possible that a particular group could end up consuming too much and negatively impact the rest of the teams.
To prevent this, and ensure that resources that cost money are used effectively, limits can be helpful.
We've added a group storage limit in issues like https://gitlab.com/gitlab-org/gitlab-ce/issues/59235. Now, we should consider the GitLab experience when these limits are enforced.
We should not begin enforcing limits until add-on storage is available for purchase.
Proposal
- When a group exceeds the soft limit, apply a warning in the UI and on pushes.
- When a group attempts to exceed the hard limit, reject the action with an error.
Documentation blurb
(Write the start of the documentation of this feature here, include:
- Why should someone use it; what's the underlying problem.
- What is the solution.
- How does someone use this
During implementation, this can then be copied and used as a starter for the documentation.)