Implement pipeline quotas on GitLab.com
Since release 10.1 we have had the ability to set pipeline limits per plan, see https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/2986.
This issue is to discuss adding quotas for every user on the free plan to something a bit more reasonable than what we have now for pipeline execution, which is unlimited.
@grzesiek comments in slack:
It has some details about why we have not decided to implement that. It is believe that having a limit for X pipelines per Y minutes is better than X pipelines running at the moment.
Even so, I think this is something I would like to do immediately, in advance of being able to set pipeline quotas per project https://gitlab.com/gitlab-org/gitlab-ce/issues/63388 which will be delivered in 12.0.
On GitLab.com active_pipelines_limit and pipeline_size_limit is set to nil for all plans:
Procedure for limiting free plans
- For the
Freeplan, start with a limit of 50 pipelines running at the same time (max active pipelines) and 500 jobs in a pipeline (max pipeline size) on a free plan.
p = Plan.find_by(name: 'free')
p.pipeline_size_limit = 500
p.active_pipelines_limit = 50
p.save
GitLab Plans
- bronze
- silver
- gold
- free
- early_adopter
Questions
- What is a good starting limit for free plans?
- Should we make a public announcement before turning this on?
This might help with the following current and past issues
- production#895 (closed)
- https://gitlab.com/gitlab-com/gl-infra/production/issues/819
- https://gitlab.com/gitlab-com/gl-infra/production/issues/757
More information where quotas were previously discussed in https://gitlab.com/gitlab-org/gitlab-ee/issues/3477