Yicong-Huang opened a new pull request, #4598:
URL: https://github.com/apache/texera/pull/4598

   Closes #4580
   
   ## Summary
   This PR adds release-branch backport automation driven by `release/*` labels 
on PRs.
   
   It introduces:
   - PR-time backport compatibility checks that cherry-pick the PR-only commit 
range onto each labeled `release/*` target branch and run CI on that checkout
   - a reusable build workflow shared by normal CI and backport CI
   - post-merge automation that looks for successful backport checks and 
directly cherry-picks the merged change onto the labeled release branch
   - contributor docs for the release-label workflow
   
   ## Behavior
   - Add one or more labels such as `release/v1.1.0-incubating` to a PR.
   - The `Backport Compatibility` workflow creates one CI matrix per labeled 
release branch.
   - Each matrix job starts from the target release branch, cherry-picks the 
PR-only commit range, and runs the build/test jobs there.
   - After the PR is squash-merged to `main`, `Direct Backport Push` rechecks 
the corresponding `Backport CI (...)` result and pushes the cherry-pick to each 
passing target branch.
   - If cherry-pick conflicts occur, the backport CI fails before the 
post-merge workflow can push.
   
   ## Testing
   Fork workflow validation:
   - End-to-end workflow shakeout PR: 
[Yicong-Huang/texera#5](https://github.com/Yicong-Huang/texera/pull/5)
   - Representative successful backport workflow run after portability fixes: 
[Backport Compatibility run 
25204255741](https://github.com/Yicong-Huang/texera/actions/runs/25204255741)
   
   Behind-release-branch scenarios:
   - Clean cherry-pick scenario PR: 
[Yicong-Huang/texera#8](https://github.com/Yicong-Huang/texera/pull/8)
   - Conflict scenario PR: 
[Yicong-Huang/texera#9](https://github.com/Yicong-Huang/texera/pull/9)
   - GitHub workflow runs are queued on the fork:
     - clean: [run 
25204498813](https://github.com/Yicong-Huang/texera/actions/runs/25204498813)
     - conflict: [run 
25204498789](https://github.com/Yicong-Huang/texera/actions/runs/25204498789)
   
   Local equivalence checks against those two scenarios:
   - clean scenario: target `release/behind-clean` was 19 commits behind the PR 
base branch and cherry-pick succeeded cleanly
   - conflict scenario: target `release/conflict-addadd` was also behind the PR 
base branch and cherry-pick failed with an expected `add/add` conflict on 
`.codex-backport/conflict.txt`
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to