Skip to content

[ci] Explain the glibc 2.17 Bazel build and mark it for removal - #68113

Draft
elliot-barn wants to merge 1 commit into
elliot-barn/bazel-protobuf-29from
elliot-barn/bazel-glibc217-todos
Draft

elliot-barn wants to merge 1 commit into
elliot-barn/bazel-protobuf-29from
elliot-barn/bazel-glibc217-todos

Conversation

@elliot-barn

Copy link
Copy Markdown
Collaborator

Why

Stacked on #66483, and based on its branch, so the diff is only the comments. GitHub retargets it to master once #66483 merges.

#66483 adds a bazel-glibc217 wanda image: Bazel compiled from source inside manylinux2014, shipped with a JDK 21. Bazel 8's official Linux binaries need glibc >= 2.25. Ray builds its Linux wheels inside manylinux2014 (CentOS 7, glibc 2.17), so that the wheels keep running on glibc 2.17 systems, and the official binary can't start there.

The steps that build and use this image don't say why they exist, or when they can go. This PR adds that.

What changes

Comments only, no behavior change:

  • bazel-glibc217-x86_64 step (.buildkite/_forge.rayci.yml): why the image exists, and a TODO to move the wheel build from manylinux2014 to manylinux_2_28 (glibc 2.28, which raises the user glibc floor to 2.28). After that move, the official Bazel binary runs in the build image and all of this can be deleted. The comment lists everything to remove.
  • bazel-glibc217-aarch64 step (.buildkite/linux_aarch64.rayci.yml): a short version that points to the x86_64 step.
  • Every depends_on: bazel-glibc217-* edge (_forge, _wheel-build, build, linux_aarch64): a one-line TODO.
  • The COPY --from=bazel blocks in the ray-core, ray-cpp-core, ray-java and manylinux-retag Dockerfiles: a one-line TODO.

The release pipeline's _forge and _wheel-build files are symlinks to these, so they pick up the same comments.

Tests run

Command Result
yaml.safe_load on every .buildkite/*.rayci.yml all parse
pre-commit run --files <changed files> passed

AI assistance was used to draft this change.

🤖 Generated with Claude Code

@elliot-barn
elliot-barn force-pushed the elliot-barn/bazel-protobuf-29 branch from c867d2a to 59c6539 Compare November 12, 2026 22:44
@elliot-barn
elliot-barn force-pushed the elliot-barn/bazel-glibc217-todos branch from a0f007e to d75d296 Compare November 12, 2026 22:45
Comment the bazel-glibc217 steps with why they exist: Bazel 8's release
binaries need glibc >= 2.25 and the wheels build in manylinux2014 (glibc
2.17). Add TODOs on the steps, their depends_on edges and the Dockerfile
COPY blocks to remove all of it once the wheel build moves to
manylinux_2_28.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: elliot-barn <elliot.barnwell@anyscale.com>
@elliot-barn
elliot-barn force-pushed the elliot-barn/bazel-glibc217-todos branch from d75d296 to d720fcd Compare November 12, 2026 23:03

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant