lindell / multi-gitter

Update multiple repositories in with one command
Apache License 2.0
819 stars 64 forks source link

Feature request: sleep between concurrent groups #481

Open nwsparks opened 1 month ago

nwsparks commented 1 month ago

The feature request

A flag to sleep for X seconds between concurrent groups or between pr's would be very helpful to prevent build storms.

For example if concurrency was 5, you could set --second-between-executions 60 and it would process 5 repositories, wait 60 seconds, then process another 5 repositories.

Alternatively it could be done in between each PR but I suspect that is harder to accomplish. Controlling it via concurrency seems fine to me.

Implementation

lindell commented 1 month ago

Cloud you please add context on why you want to do it. And which platform you are using /GitHub/GitLab etc.

nwsparks commented 1 month ago

sure, the platform is github. i'm doing a simple change, updating .dockerignore, which is a fast operation. I'm doing it against quite a few repositories so without a pause between pull requests it will cause a build storm and clog up CI for quite awhile.

I settled for just adding a sleep at the end of the script and low concurrency which I guess is what most people could do in lieu of a flag to control it.

lindell commented 1 month ago

Seems like a valid usecase. But since it has a simple workaround I will not prioritize it. If anyone else wants to pick it up, feel free.

I think the easiest option would be to add X seconds before starting any new run (except the first batch).