RFC: Improving the Foreman backporting process
Context and Problem Statement
The Foreman release process doesn’t well define how backports work. Today, developers often perform their own backports. There isn’t a defined Redmine triage process, so the “target version” cannot be relied on. This means that community contributors may have a hard time requesting backports of their code for a specific version of Foreman, and it also means that there is more work on the release engineer.
This issue came up in the PR https://github.com/theforeman/foreman/pull/11033#issuecomment-4889890256.
Proposal
There are a couple ideas that came up during today’s upstream release meeting:
- Have Foreman follow Katello’s release process. This would mean that core Foreman contributors need to perform consistent Redmine triages where the target version is set correctly. Then, a script at release time would tell the release owner which cherry picks to perform based on Redmine information.
- Introduce cherry pick labels in GitHub, similarly to how the Pulp and Robottelo projects keep track of what to backport. This could evolve into increased GitHub automation, like automated cherry-pick PRs, or better changelogs for releases within GitHub. This idea comes from @Odilhao, so I may have missed some intricacies.
Decision Outcome
…
Impacts
The ideas above have impacts on the amount of work that core Foreman maintainers need to perform, and also our use of Redmine versus GitHub for issue tracking.
Tagging @ogajduse and @Zhunting who were part of the meeting discussion that spawned this RFC.