PlanetScale

Automating cherry-picks between OSS and private forks

Jan 14, 2025Manan Gupta
Automating cherry-picks between OSS and private forks
SummaryAI, from the source post

This post details the development and implementation of a Vitess cherry-pick bot to automate the process of synchronizing private Vitess forks with open-source changes. It describes the evolution from a manual approach to using `git-replay` and finally to a stateful bot leveraging GitHub Actions and a PlanetScale database. The bot's core functionalities include identifying and executing cherry-picks from OSS `main` to the private `upstream` branch, and backporting changes to private `latest` branches based on labels. It also outlines the conflict resolution strategy, PR assignment, and the implementation of weekly integrity checks for reconciliation and alerting.

More from the Vitess Release Management trail