Make it possible to enforce a quiet period before starting CI for a branch
Description
We have a project with a large, slow test suite where developers have a tendency to push immediately after every single commit rather than create a series of commits and push the result. As a result of the rapid fire pushes, the project winds up with an impossibly large backlog of pipelines to run.
Even if we manage to educate most people to avoid this push practice, it only takes 1 person doing it wrong to swamp our CI runners with work. Ideally, we would reduce the time spent in the test suite, but that's not in the cards either.
Proposal
We need GitLab to allow for the definition of a quiet period prior to triggering CI for a branch in order to gather up these commits into a single batch to process at once. Most projects don't have this problem, so this needs to be a per-project setting that defaults to disabled. When enabled, a default quiet period of 5 minutes should be set, which can then be overridden if necessary.