diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index b8e6bb8bfd69..6c1a402791d3 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -34,7 +34,7 @@ jobs: - cudf-polars-polars-tests - wheel-build-dask-cudf - wheel-tests-dask-cudf - - devcontainer + - devcontainers-conda - unit-tests-cudf-pandas - pandas-tests - narwhals-tests @@ -334,7 +334,7 @@ jobs: uses: rapidsai/shared-workflows/.github/workflows/checks.yaml@main with: enable_check_generated_files: false - ignored_pr_jobs: "telemetry-summarize spark-rapids-jni wheel-tests-cudf-polars-with-rapidsmpf" + ignored_pr_jobs: "telemetry-summarize spark-rapids-jni wheel-tests-cudf-polars-with-rapidsmpf devcontainers-pip" conda-cpp-build: needs: checks permissions: @@ -670,8 +670,8 @@ jobs: matrix_filter: map(select(.ARCH == "amd64")) | group_by(.CUDA_VER|split(".")|map(tonumber)|.[0]) | map(max_by([(.PY_VER|split(".")|map(tonumber)), (.CUDA_VER|split(".")|map(tonumber))])) build_type: pull-request script: ci/test_wheel_dask_cudf.sh - devcontainer: - permissions: + devcontainers-conda: + permissions: &devcontainers-permissions actions: read contents: read id-token: write @@ -683,6 +683,7 @@ jobs: with: arch: '["amd64", "arm64"]' cuda: '["13.1"]' + python_package_manager: '["conda"]' node_type: "cpu8" timeout-minutes: 90 env: | @@ -693,13 +694,29 @@ jobs: # librapidsmpf-cu13 wheels brings in a hardcoded libnuma-dev cmake target: https://github.com/NVIDIA/cuCascade/issues/118 # -DBUILD_TESTS=OFF to match rapidsmpf https://github.com/rapidsai/rapidsmpf/blob/main/.github/workflows/pr.yaml#L351 (leads to compilation errors) # -DCUDF_BUILD_TESTUTIL=OFF to avoid IMPORTED_GLOBAL promotion errors when cuCascade's find_package(cudf) loads cudf-config.cmake from a CPM subdirectory - build_command: | + build_command: &devcontainers-build-command | sccache --zero-stats; clone-rapidsmpf -j$(nproc) -v -q --branch "$(cat ~/cudf/RAPIDS_BRANCH)" --clone-upstream --depth 1 --single-branch --shallow-submodules; if [ "$PYTHON_PACKAGE_MANAGER" = "pip" ]; then rapids-make-pip-env --force; elif [ "$PYTHON_PACKAGE_MANAGER" = "conda" ]; then rapids-make-conda-env --force; fi; rapids-generate-scripts; build-all -j0 -DBUILD_BENCHMARKS=OFF -DBUILD_NUMA_SUPPORT=OFF -DBUILD_TESTS=OFF -DCUDF_BUILD_TESTUTIL=OFF --verbose 2>&1 | tee telemetry-artifacts/build.log; sccache --show-adv-stats | tee telemetry-artifacts/sccache-stats.txt; + devcontainers-pip: + permissions: *devcontainers-permissions + secrets: inherit # zizmor: ignore[secrets-inherit] + needs: telemetry-setup + uses: rapidsai/shared-workflows/.github/workflows/build-in-devcontainer.yaml@main + with: + arch: '["amd64", "arm64"]' + cuda: '["13.1"]' + python_package_manager: '["pip"]' + node_type: "cpu8" + timeout-minutes: 90 + env: | + SCCACHE_DIST_MAX_RETRIES=inf + SCCACHE_SERVER_LOG=sccache=debug + SCCACHE_DIST_FALLBACK_TO_LOCAL_COMPILE=false + build_command: *devcontainers-build-command unit-tests-cudf-pandas: needs: [wheel-build-cudf, changed-files] permissions: