feat(dev-infra): support user-failures when computing branches for target label (#38223)
The merge tool provides a way for configurations to determine the branches for a label lazily. This is supported because it allows labels to respect the currently selected base branch through the Github UI. e.g. if `target: label` is applied on a PR and the PR is based on the patch branch, then the change could only go into the selected target branch, while if it would be based on `master`, the change would be cherry-picked to `master` too. This allows for convenient back-porting of changes if they did not apply cleanly to the primary development branch (`master`). We want to expand this function so that it is possible to report failures if an invalid target label is appplied (e.g. `target: major` not allowed in some situations), or if the Github base branch is not valid for the given target label (e.g. if `target: lts` is used, but it's not based on a LTS branch). PR Close #38223
This commit is contained in:

committed by
Andrew Kushnir

parent
84661eac64
commit
db5e1de07a
@ -31,6 +31,9 @@ export interface TargetLabel {
|
||||
* List of branches a pull request with this target label should be merged into.
|
||||
* Can also be wrapped in a function that accepts the target branch specified in the
|
||||
* Github Web UI. This is useful for supporting labels like `target: development-branch`.
|
||||
*
|
||||
* @throws {InvalidTargetLabelError} Invalid label has been applied to pull request.
|
||||
* @throws {InvalidTargetBranchError} Invalid Github target branch has been selected.
|
||||
*/
|
||||
branches: TargetLabelBranchResult|((githubTargetBranch: string) => TargetLabelBranchResult);
|
||||
}
|
||||
|
Reference in New Issue
Block a user