You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It'd be great if we could pause the queue and halt all kodiak merges via the dashboard (ideally per repo, but per org would be a good start). If we have an ongoing incident and 5 merges queued up, it'd be great to not allow any to merge. On top of that, we would need to still be able to cut the line/deploy during an incident, but I assume prioritized merges would fit that bill.
The text was updated successfully, but these errors were encountered:
Hey @charliegroll, this sounds like a nice enhancement!
Prioritized merges should help during an incident. When you add the priority label to a PR, if there is a PR being merged by Kodiak, Kodiak will continue to merge that PR and then pickup the prioritized PR afterwards. Basically Kodiak doesn't cancel the existing merge.
To halt all merges, you might be able to use this GitHub App: https://www.mergefreeze.com/
I haven't used it, so I can't really speak to how well it works, but I've seen other organizations using it.
I think implementing this feature in Kodiak is doable. We'd need to update the Dashboard (UI and API) to store some state about a merge freeze for a repository in the GitHub Bot's Redis instance. Then we could update the bot to check that Redis state when evaluating PRs.
So this feature would touch all parts of the app, but it isn't too complicated from my POV. It's actually pretty similar to how the paywall works at the moment.
It'd be great if we could pause the queue and halt all kodiak merges via the dashboard (ideally per repo, but per org would be a good start). If we have an ongoing incident and 5 merges queued up, it'd be great to not allow any to merge. On top of that, we would need to still be able to cut the line/deploy during an incident, but I assume prioritized merges would fit that bill.
The text was updated successfully, but these errors were encountered: