Add CI jobs for PyTorch and CuPy integration tests#2240
Add CI jobs for PyTorch and CuPy integration tests#2240rapids-bot[bot] merged 10 commits intorapidsai:mainfrom
Conversation
Add separate CI jobs for testing RMM integrations with PyTorch and CuPy. This splits tests into minimal (no PyTorch/CuPy) and integration test jobs for both conda and wheel builds. - Add test_pytorch and test_cupy file-keys to dependencies.yaml - Add depends_on_pytorch and depends_on_cupy dependency groups with CUDA-version-specific package specifications for conda and pip - Add ci/test_python_integrations.sh for conda-based integration tests - Add ci/test_wheel_integrations.sh for wheel-based integration tests - Add conda-python-tests-integrations and wheel-tests-integrations jobs to pr.yaml and test.yaml workflows
jameslamb
left a comment
There was a problem hiding this comment.
Left a few suggestions for your consideration, enough that I'm leaving a "comment" review and not an "approve one". @ me when you're ready for another review.
jameslamb
left a comment
There was a problem hiding this comment.
Approving so you don't need to chase me for a review, do what you want with the remaining comments.
…ons, consolidate pip installs
📝 WalkthroughSummary by CodeRabbit
WalkthroughAdds CI integration testing for PyTorch and CuPy: two optional PR workflow jobs (conda and wheel variants), two integration test scripts (conda- and wheel-based), new dependency groups for PyTorch/CuPy, and updates to PR checks to ignore the optional jobs. Changes
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
🧪 Generate unit tests (beta)
No actionable comments were generated in the recent review. 🎉 Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Fix all issues with AI agents
In `@ci/test_wheel_integrations.sh`:
- Around line 31-35: Add a GPU availability check before running GPU-dependent
tests: run a quick nvidia-smi call right after obtaining RAPIDS_CUDA_VERSION
(before pytest invocation) and fail fast if it errors; update the script to
print a clear error message and set/exit with a non-zero EXITCODE (use the
existing EXITCODE variable) when nvidia-smi is not available or returns a
non-zero status so tests don’t proceed on machines without a usable GPU.
🧹 Nitpick comments (1)
.github/workflows/pr.yaml (1)
205-212: Missingsccache-dist-token-secret-name— inconsistent with the other test jobs.The existing
conda-python-testsjob (line 204) and the newwheel-tests-integration-optionaljob (line 264) both passsccache-dist-token-secret-name, but this new conda integration job does not. If this was intentionally removed per the "remove unused sccache" commit, consider also removing it fromwheel-tests-integration-optionalfor consistency — otherwise, add it here to match the existing pattern.Option A: Add sccache token to match other jobs
conda-python-tests-integration-optional: needs: [conda-python-build, changed-files] secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/conda-python-tests.yaml@main if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python_conda with: build_type: pull-request script: ci/test_python_integrations.sh + sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
…ons, consolidate pip installs
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
… test-integrations # Conflicts: # .github/workflows/pr.yaml
|
/merge |
Description
Closes #2239.
Adds separate CI jobs for testing RMM integrations with PyTorch and CuPy.
This splits tests into minimal (no PyTorch/CuPy) and integration test jobs for both conda and wheel builds.
test_pytorchandtest_cupyfile keys to dependencies.yamldepends_on_pytorchanddepends_on_cupydependency groups with CUDA-version-specific package specifications for conda and pipci/test_python_integrations.shfor conda-based integration testsci/test_wheel_integrations.shfor wheel-based integration testsconda-python-tests-integration-optionalandwheel-tests-integration-optionaljobs topr.yamlignored_pr_jobs) so they don't block PR mergesChecklist