Backend: Add Limitable to group and project CI variables
The new group and project CI variable limits were added in #362228 (closed), but we determined that they are too low for us to implement at this time. See #362228 (comment 1250187610) for details
Increase the limit for projects to 8000, and the limit for groups to 30000. Then add the Limitable
module to Ci::Variable
and Ci::GroupVariable
.
When users are over the limit, return from the API a message that states
This project/group has XXX defined CI/CD variables, which is over the limit of XXX variables per project/group. To add new variables, you must reduce the number of defined variables.
Technical Note
To whomever picks this up - there is a RSpec shared examples named includes Limitable concern
that can be used to test the addition of Limitable to models. However, it sometimes creates a cross-database transaction. When you have an MR for your changes, make sure to add the pipeline:run-single-db label so the pipeline will catch these cross-database transactions before the MR is merged.
Implementation Table
Title | MR Link | Done? |
---|---|---|
Update the default limits | !109861 (merged) | |
Add Limitable
|
!107092 (merged) |