Option to add update trigger after required statuses pass for the first time
wrslatz opened this issue · 2 comments
Follow-on to #259. This change helps prevent PRs that are not passing from unnecessarily being updated, but it also slows down updates from Bulldozer in general.
I wonder if Bulldozer could be configured to automatically add a trigger label after required statuses pass for the first time? This would help prevent PRs that are not passing from getting updates while still keeping passing PRs updating more quickly than waiting for each commit to fully complete required statuses.
Alternatively, a more complex process of Bulldozer adding and removing update trigger labels based on conditions could give Bulldozer somewhat of a queueing functionality, but it may be tricky to make this idempotent and not introduce flip-flopping in state.
Hi @wrslatz
I am eager to know more about this functionality.Can you explain a bit more specific to what is the requirements it will be kind helpful to me
Hi @wrslatz
I am eager to know more about this functionality.Can you explain a bit more specific to what is the requirements it will be kind helpful to me
@amartyaroy We frequently see PRs that have never been passing get continuous update commits, which are wasteful of continuous integration resources. The idea is that Bulldozer could potentially be smarter about update merges it pushes to prevent unnecessary builds from running. We have update commits automatically enabled so a human does not have to manually label them when ready, but it lacks intelligent handling.
I wonder if Bulldozer could be configured to automatically add a trigger label after required statuses pass for the first time? This would help prevent PRs that are not passing from getting updates while still keeping passing PRs updating more quickly than waiting for each commit to fully complete required statuses.
Essentially once all statuses pass, Bulldozer could apply a label to the PR to then cause it to be kept up to date.
In practice I still think this is a poor option and there are likely much better alternatives, even if they are not fully automated. It's difficult to achieve more intelligent updates and merges without stateful knowledge of PRs or a queue, and that's something maintainers have said several times is not planned for Bulldozer and goes against its design. If anyone has ideas on how Bulldozer could remain stateless but still have more intelligence in update commits, those ideas would be welcome!