From 68d4336f51a53c4afea862eb9a2689aa9e24f142 Mon Sep 17 00:00:00 2001 From: Dante Gama Dessavre Date: Mon, 6 May 2024 16:29:06 -0500 Subject: [PATCH] Add optional CI job for integration tests with cudf.pandas (#5881) cc @betatim This PR adds the CI jobs proposed in #5876 Authors: - Dante Gama Dessavre (https://github.com/dantegd) Approvers: - Ray Douglass (https://github.com/raydouglass) URL: https://github.com/rapidsai/cuml/pull/5881 --- .github/workflows/pr.yaml | 9 +++++++++ ci/run_cuml_integration_pytests.sh | 7 +++++++ ci/test_python_integration.sh | 25 +++++++++++++++++++++++++ 3 files changed, 41 insertions(+) create mode 100755 ci/run_cuml_integration_pytests.sh create mode 100755 ci/test_python_integration.sh diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index d4a3c3251d..933db0304d 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -32,6 +32,8 @@ jobs: uses: rapidsai/shared-workflows/.github/workflows/checks.yaml@branch-24.06 with: enable_check_generated_files: false + ignored_pr_jobs: >- + conda-python-tests-cudf-pandas-integration clang-tidy: needs: checks secrets: inherit @@ -75,6 +77,13 @@ jobs: with: build_type: pull-request script: "ci/test_python_singlegpu.sh" + conda-python-tests-cudf-pandas-integration: + needs: conda-python-build + secrets: inherit + uses: rapidsai/shared-workflows/.github/workflows/conda-python-tests.yaml@branch-24.06 + with: + build_type: pull-request + script: "ci/test_python_integration.sh" conda-python-tests-dask: needs: conda-python-build secrets: inherit diff --git a/ci/run_cuml_integration_pytests.sh b/ci/run_cuml_integration_pytests.sh new file mode 100755 index 0000000000..7e0990ca1f --- /dev/null +++ b/ci/run_cuml_integration_pytests.sh @@ -0,0 +1,7 @@ +#!/bin/bash +# Copyright (c) 2024, NVIDIA CORPORATION. + +# Support invoking run_cuml_singlegpu_pytests.sh outside the script directory +cd "$(dirname "$(realpath "${BASH_SOURCE[0]}")")"/../python/cuml/tests + +python -m pytest -p cudf.pandas --cache-clear --ignore=dask -m "not memleak" "$@" --quick_run . diff --git a/ci/test_python_integration.sh b/ci/test_python_integration.sh new file mode 100755 index 0000000000..1178130aa0 --- /dev/null +++ b/ci/test_python_integration.sh @@ -0,0 +1,25 @@ +#!/bin/bash +# Copyright (c) 2024, NVIDIA CORPORATION. + +# Support invoking test_python_singlegpu.sh outside the script directory +cd "$(dirname "$(realpath "${BASH_SOURCE[0]}")")"/../ + +# Common setup steps shared by Python test jobs +source ./ci/test_python_common.sh + +EXITCODE=0 +trap "EXITCODE=1" ERR +set +e + +rapids-logger "pytest cuml integration" +./ci/run_cuml_integration_pytests.sh \ + --numprocesses=8 \ + --dist=worksteal \ + --junitxml="${RAPIDS_TESTS_DIR}/junit-cuml.xml" \ + --cov-config=../../.coveragerc \ + --cov=cuml \ + --cov-report=xml:"${RAPIDS_COVERAGE_DIR}/cuml-coverage.xml" \ + --cov-report=term + +rapids-logger "Test script exiting with value: $EXITCODE" +exit ${EXITCODE}