Skip to content

ci: centralize path filtering across workflows#59326

Draft
joshtrichards wants to merge 4 commits into
masterfrom
jtr/ci-centralized-filtering-workflow
Draft

ci: centralize path filtering across workflows#59326
joshtrichards wants to merge 4 commits into
masterfrom
jtr/ci-centralized-filtering-workflow

Conversation

@joshtrichards
Copy link
Copy Markdown
Member

  • Resolves: #

Summary

This change centralizes CI path filtering so workflows can share one filtering implementation instead of duplicating file-matching logic.

This reduces maintenance overhead, improves consistency between workflows, and helps avoid running CI jobs when a changeset does not affect them.

This can be used for all workflows that currently use (or will use) changes jobs to do path filtering. Today that is ~30 files where this logic is currently distributed around.

Instead of doing all 30 at once, this migrates a straightforward variation of each one supported type (PHP, JS, PHP+Custom) -- using the newly introduced re-usable central workflow. This keeps the PR easier to review. Once this passes well, the other ~27 can be done in a single follow-up PR.

TODO

  • ...

Checklist

AI (if applicable)

  • The content of this PR was partly or fully generated using AI

…r logic

Centralize filtering ("changes") logic for maintainability and consistency:

- One shared detect-changes job per workflow run, called via workflow_call
- Single source of truth for "what counts as a PHP change" and "what counts as a JS change"
- Adding a new path = editing 1 file
- Consistent behavior across all "like" workflows
- Paves the way to later adding centralized orchestration (i.e. fewer jobs/duplicate work across workflows triggered by the same change)

Signed-off-by: Josh <josh.t.richards@gmail.com>
Signed-off-by: Josh <josh.t.richards@gmail.com>
Signed-off-by: Josh <josh.t.richards@gmail.com>
…filter

Also an example of how to use a workflow-level `extra-changes` to add workflow-level customized filtering where needed/desirable.

Signed-off-by: Josh <josh.t.richards@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant