ci(images): bump docker CUDA to 13.1.0 and Python to 3.14.1 - #1123
Conversation
Update the default image matrix in build_test_publish_images.yaml to ship the latest CUDA and Python versions cuOpt supports (per dependencies.yaml): CUDA 13.1 and Python 3.14. CUDA 12.9.0 coverage is retained.
|
Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually. Contributors can view more details about this message here. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (4)
✅ Files skipped from review due to trivial changes (2)
📝 WalkthroughWalkthroughUpdated default version values and related references: GitHub Actions workflow default CUDA upgraded to 13.1.0 and Python to 3.14.4; README and docs strings updated to reflect new nightly image tags; Dockerfile changed to use update-alternatives for Python instead of a symlink. No behavioral workflow logic changes. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes 🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
The deadsnakes PPA on Ubuntu 22.04 currently ships Python 3.14.4; using that exact patch in the workflow makes the image tag match what is actually installed in the container.
The Dockerfile only symlinked /usr/bin/python to python${PYTHON_SHORT_VER}
and left /usr/bin/python3 pointing at the ubuntu base image's python3.10,
which does not have cuopt installed. Callers using 'python3' inside the
container would therefore import-fail. Retarget /usr/bin/python3 at the
same interpreter used for the cuopt install.
Switch from direct 'ln -sf' to update-alternatives so the override for
/usr/bin/python3 -> python${PYTHON_SHORT_VER} survives future apt-get
installs of packages that depend on python3 (deadsnakes' python3.14 does
not provide the 'python3' virtual package, so apt can still pull in the
base image's python3.10). Priority 100 keeps the deadsnakes-installed
interpreter selected in auto mode.
The CUDA 13.1 / Python 3.14 image defaults ship first via nightly builds; stable (latest) tags still use cuda13.0/py3.13 until a new release is cut. Update the install-selector nightly branch and add a README note so users can find nightly tags for early testing.
|
/merge |
Summary
13.0.0→13.1.0(keeps12.9.0for CUDA 12 coverage)3.13.7→3.14.1These are the latest CUDA and Python versions cuOpt supports per
dependencies.yaml(CUDA 13.1 and Python 3.14 entries).Only the default inputs in
.github/workflows/build_test_publish_images.yamlchange; the Dockerfile itself already consumes these as build args and needs no edit.Test plan
cuda12.9-py3.14-*,cuda13.1-py3.14-*across amd64 and arm64nvidia/cuopt:<tag>-cuda12.9-py3.14-<arch>,...cuda13.1-py3.14-<arch>)test_images.yamlpasses against the new tags