Yicong-Huang opened a new issue, #4627:
URL: https://github.com/apache/texera/issues/4627
### Task Summary
Umbrella for the "optional CI" line of work: make the Build workflow's main
stacks (`frontend`, `scala`, `python`, `agent-service`) and the per-target
backport matrix run only for the stacks a PR actually touches, driven by the
labels applied by the Pull Request Labeler.
### Motivation
Today every PR pays the full CI matrix (frontend × 3 OS, scala, python × 4
versions, agent-service × 2 OS, plus a backport matrix per `release/*` label).
Pure frontend changes pay the scala/python tax; docs-only PRs wait on sbt;
release-labelled docs PRs spawn an entire backport matrix that builds nothing
relevant. The labels the Pull Request Labeler already produces are a
near-perfect signal for what each PR actually needs to verify.
### Sub-issues
- #4621 — Skip non-relevant CI stacks based on changed file paths
*(framework: precheck waits for labeler, gates `run_*` outputs on labels;
landed in #4622)*
- #4625 — Skip non-frontend stacks on frontend-only PRs *(adds the
`frontend`-only / `{frontend, docs, dev}` rule; #4626)*
### Future candidates (open as new sub-issues when prioritized)
- Symmetric rules for `python` / `engine` / `service` only PRs.
- Skipping individual matrix combinations (e.g. only running frontend on
`ubuntu-latest` for non-frontend PRs that still touch shared infra).
- Treating `ci` / `dependencies` labels explicitly (currently they fall into
the catch-all "run everything" branch).
### Priority
P2 – Medium
### Task Type
- [x] Code Implementation
- [x] DevOps / Deployment
--
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]