On Mon, 4 Dec 2023 at 12:04, Sascha Grunert <
sascha...@gmail.com> wrote:
>
> Hey kubefolks,
>
> SIG Release was working on a new prow plugin in the past weeks to simplify the Kubernetes cherry-pick experience for Release Managers [0]. With that we'd like to announce the new cherry-pick-approved prow plugin!
> It does:
>
> - Accept a list of cherry-pick approvers configured for a particular repository [1]
> - If one of those people approve a PR's (by using the GitHub review feature) against a release-1.x branch, then prow validates:
> - That there are no failed tests
> - That labels are correctly set (lgtm + approved, without any hold etc) [2]
> - If the above conditions are met, then prow will apply the cherry-pick-approved and remove the do-not-merge/cherry-pick-not-approved label
>
+1!
please note the last WG LTS meeting had some interesting points about
the cherry pick process:
https://docs.google.com/document/d/1RI_EL35MwQxrHqlWvtQNINhOSWergL3hmOSgC5PeZss/edit#bookmark=id.9yy6mgja0wm6
>> - limit backports to regression / security / data-loss fixes by default
>> - anything beyond that needs justification / careful risk analysis (size, entanglement with other changes, test coverage)
>> - the level of scrutiny changes to master get between code freeze and .0 release is the level we should be applying to backports
> The workflow is simple and can be re-used by other repositories without having a need to increase the set of permissions of people who volunteer to maintain release branches. We will test the plugin in the upcoming weeks to see how we can improve the workflow even further.
curious, do we have recent cases when cherry pick approvers have
blocked a certain cherry pick due to not meeting the defined criteria?
https://github.com/kubernetes/sig-release/blob/master/release-engineering/role-handbooks/patch-release-team.md?plain=1
asked differently, the cherry pick process is currently gated by the
cherry pick approvers, but is the criteria applied in practice?
>
> Possible extensions to the plugin could be:
> - Documentation about how to use the plugin and what it does
> - Automatically validate cherry-picks across different release branches (we usually apply them in batches)
>
> I created a follow-up issue [3] to track the future efforts.
also based on recent LTS discussions, we might actually want to not do
that automatically.
backports that regress old MINORs can prove difficult to fix and are
generally much undesired by maintainers and users.
lubomir
--