Skip to content

Spark: Scope Spark CI without ignored path list#16800

Draft
manuzhang wants to merge 1 commit into
apache:mainfrom
manuzhang:codex/spark-ci-version-filter-no-ignore
Draft

Spark: Scope Spark CI without ignored path list#16800
manuzhang wants to merge 1 commit into
apache:mainfrom
manuzhang:codex/spark-ci-version-filter-no-ignore

Conversation

@manuzhang

Copy link
Copy Markdown
Member

Summary

This updates Spark CI to generate its test matrix from the files changed in a pull request.

For pull requests that only touch version-scoped Spark directories such as spark/v4.1/**, the workflow now runs only that Spark version's jobs. Changes to shared code, build files, workflow files, docs mixed with Spark changes, or any unknown path continue to run the full Spark matrix.

Why

The existing workflow always expands the full Spark matrix once Spark CI is triggered, so a Spark 4.1-only change still runs Spark 4.0 jobs. This keeps coverage for shared changes while avoiding unrelated version-specific test jobs.

The detector intentionally does not duplicate the workflow's paths-ignore list. It only narrows the matrix when every changed path is under a version-scoped Spark directory; otherwise it falls back to the full matrix.

Validation

  • Parsed .github/workflows/spark-ci.yml with Ruby YAML loading.
  • Ran bash -n against the generated detector script.
  • Simulated changed-file detection for:
    • spark/v4.1/** selecting only Spark 4.1 jobs
    • .github/workflows/spark-ci.yml selecting the full matrix
    • docs plus spark/v4.1/** selecting the full matrix
  • Ran git diff --check.

actionlint was not installed locally, so I could not run it before updating the draft PR.

Generate the Spark CI matrix from changed version-scoped Spark paths. Fall back to the full matrix for shared or unknown paths instead of duplicating paths-ignore in shell code.

Co-authored-by: Codex <codex@openai.com>
@github-actions github-actions Bot added the INFRA label Jun 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant