zhengruifeng opened a new pull request, #56204: URL: https://github.com/apache/spark/pull/56204
### What changes were proposed in this pull request? This PR does two things: 1. **Extracts a reusable composite action** at `.github/actions/build-docs/action.yml` that encapsulates the shared doc-build logic: installing Bundler, running `bundle install`, optionally patching version strings in `_config.yml` / `pyspark/version.py`, creating the `python3` symlink, running the optional `SKIP_API` pre-build, running `dev/is-changed.py` change detection, and running the final `bundle exec jekyll build`. 2. **Updates `pages.yml`** to run inside the same pre-built Docker image (`ghcr.io/apache/spark/apache-spark-github-action-image-docs-cache:master`) that the `docs` job in `build_and_test.yml` already uses, and calls the new composite action instead of repeating the setup inline. `build_and_test.yml` is also updated to call the same composite action, collapsing five steps (one install + four branch-conditional run steps) into two (a python-version detector + one composite action call). ### Why are the changes needed? `pages.yml` was installing Java, Python 3.11, Ruby, Pandoc, and ~20 pip packages from scratch on a bare runner, duplicating the setup that `build_and_test.yml` already does via a pre-built Docker image. This caused version skew (Python 3.11 vs 3.12, different pip pins) and wasted CI time re-installing dependencies on every master push. ### Does this PR introduce _any_ user-facing change? No. ### How was this patch tested? Workflow-only change; no unit tests. The composite action logic is identical to the inline shell steps it replaces, verified by inspection. ### Was this patch authored or co-authored using generative AI tooling? Generated-by: Claude Code (https://claude.ai/code) -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
