diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index 8aadeb4a0..92c2f0434 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -189,7 +189,7 @@ jobs: package-name: cuopt package-type: python wheel-tests-cuopt: - needs: [wheel-build-cuopt, wheel-build-cuopt-mps-parser, changed-files] + needs: [wheel-build-cuopt, wheel-build-cuopt-mps-parser, wheel-build-cuopt-sh-client, changed-files] secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@branch-25.08 #if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python_cuopt diff --git a/ci/test_wheel_cuopt.sh b/ci/test_wheel_cuopt.sh index 3c78c29f0..7a16db43f 100755 --- a/ci/test_wheel_cuopt.sh +++ b/ci/test_wheel_cuopt.sh @@ -17,19 +17,33 @@ set -euo pipefail +# sets up a constraints file for 'pip' and puts its location in an exported variable PIP_EXPORT, +# so those constraints will affect all future 'pip install' calls source rapids-init-pip # Download the packages built in the previous step RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen "${RAPIDS_CUDA_VERSION}")" CUOPT_MPS_PARSER_WHEELHOUSE=$(RAPIDS_PY_WHEEL_NAME="cuopt_mps_parser" rapids-download-wheels-from-github python) +CUOPT_SH_CLIENT_WHEELHOUSE=$(RAPIDS_PY_WHEEL_NAME="cuopt_sh_client" rapids-download-wheels-from-github python) CUOPT_WHEELHOUSE=$(RAPIDS_PY_WHEEL_NAME="cuopt_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-github python) LIBCUOPT_WHEELHOUSE=$(RAPIDS_PY_WHEEL_NAME="libcuopt_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-github cpp) +# update pip constraints.txt to ensure all future 'pip install' (including those in ci/thirdparty-testing) +# use these wheels for cuopt packages +cat > "${PIP_CONSTRAINT}" <=2.0.2' \ + "$(echo ./dist/cvxpy*.whl)[CUOPT,testing]" + +# ensure that environment is still consistent (i.e. cvxpy requirements do not conflict with cuopt's) +pip check + +echo "running 'cvxpy' tests" +timeout 3m python -m pytest \ + --verbose \ + --capture=no \ + --error-for-skips \ + -k "TestCUOPT" \ + ./cvxpy/tests/test_conic_solvers.py