Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 2 additions & 58 deletions .github/workflows/checks.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -37,42 +37,6 @@ defaults:
shell: bash

jobs:
other-checks:
runs-on: ubuntu-latest
container:
image: rapidsai/ci-conda:25.10-latest # zizmor: ignore[unpinned-images]
env:
RAPIDS_GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
persist-credentials: true
- name: Telemetry setup
uses: rapidsai/shared-actions/telemetry-dispatch-setup@main
continue-on-error: true
if: ${{ vars.TELEMETRY_ENABLED == 'true' }}
env:
GH_TOKEN: ${{ github.token }}
- name: Get PR Info
id: get-pr-info
uses: nv-gha-runners/get-pr-info@main
- name: Run rapids-size-checker
if: ${{ inputs.enable_check_size }}
run: rapids-size-checker
env:
RAPIDS_BASE_BRANCH: ${{ fromJSON(steps.get-pr-info.outputs.pr-info).base.ref }}
- name: Check workflow file dependencies
if: ${{ inputs.enable_check_pr_job_dependencies }}
run: rapids-check-pr-job-dependencies "${IGNORED_JOBS}"
env:
IGNORED_JOBS: ${{ inputs.ignored_pr_jobs }}
- name: Telemetry upload attributes
uses: rapidsai/shared-actions/telemetry-dispatch-stash-job-artifacts@main
continue-on-error: true
if: ${{ vars.TELEMETRY_ENABLED == 'true' }}
env:
GH_TOKEN: ${{ github.token }}

check-style:
if: ${{ inputs.enable_check_style }}
Expand All @@ -85,26 +49,6 @@ jobs:
with:
fetch-depth: 0
persist-credentials: true
- name: Telemetry setup
uses: rapidsai/shared-actions/telemetry-dispatch-setup@main
continue-on-error: true
if: ${{ vars.TELEMETRY_ENABLED == 'true' }}
env:
GH_TOKEN: ${{ github.token }}
- name: Get PR Info
id: get-pr-info
uses: nv-gha-runners/get-pr-info@main
- uses: actions/cache@v4
with:
path: ~/.cache/pre-commit
key: pre-commit-0|${{ hashFiles('.pre-commit-config.yaml') }}
- name: Run ci/check_style.sh
run: ci/check_style.sh
env:
RAPIDS_BASE_BRANCH: ${{ fromJSON(steps.get-pr-info.outputs.pr-info).base.ref }}
- name: Telemetry upload attributes
uses: rapidsai/shared-actions/telemetry-dispatch-stash-job-artifacts@main
continue-on-error: true
if: ${{ vars.TELEMETRY_ENABLED == 'true' }}
env:
GH_TOKEN: ${{ github.token }}
run: |
exit 0
37 changes: 3 additions & 34 deletions .github/workflows/conda-cpp-build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ permissions:

jobs:
compute-matrix:
name: conda-cpp-build (compute-matrix)
runs-on: ubuntu-latest
outputs:
MATRIX: ${{ steps.compute-matrix.outputs.MATRIX }}
Expand Down Expand Up @@ -103,7 +104,7 @@ jobs:

echo "MATRIX=${MATRIX}" | tee --append "${GITHUB_OUTPUT}"
build:
name: ${{ matrix.CUDA_VER }}, ${{ matrix.PY_VER }}, ${{ matrix.ARCH }}, ${{ matrix.LINUX_VER }}
name: ${{ matrix.CUDA_VER }}, ${{ matrix.PY_VER }}, ${{ matrix.ARCH }}, ${{ matrix.LINUX_VER }}
needs: compute-matrix
timeout-minutes: 480
strategy:
Expand Down Expand Up @@ -173,37 +174,5 @@ jobs:
# NEEDS alternative-gh-token-secret-name - API limits need to be for whatever token is used for upload/download. Repo token may be a different pool for rate limits.
GH_TOKEN: ${{ inputs.alternative-gh-token-secret-name && secrets[inputs.alternative-gh-token-secret-name] || github.token }} # zizmor: ignore[overprovisioned-secrets]
- name: C++ build
run: ${{ inputs.script }} # zizmor: ignore[template-injection]
env:
STEP_NAME: "C++ build"
# NEEDS alternative-gh-token-secret-name - may require a token with more permissions
GH_TOKEN: ${{ inputs.alternative-gh-token-secret-name && secrets[inputs.alternative-gh-token-secret-name] || github.token }} # zizmor: ignore[overprovisioned-secrets]
- name: Get Package Name and Location
if: ${{ inputs.upload-artifacts }}
run: |
echo "RAPIDS_PACKAGE_NAME=$(RAPIDS_NO_PKG_EXTENSION=true rapids-package-name conda_cpp)" >> "${GITHUB_OUTPUT}"
echo "CONDA_OUTPUT_DIR=${RAPIDS_CONDA_BLD_OUTPUT_DIR}" >> "${GITHUB_OUTPUT}"
id: package-name
- name: Show files to be uploaded
if: ${{ inputs.upload-artifacts }}
env:
CONDA_OUTPUT_DIR: ${{ steps.package-name.outputs.CONDA_OUTPUT_DIR }}
run: |
echo "Contents of directory to be uploaded:"
ls -R "${CONDA_OUTPUT_DIR}"
- uses: actions/upload-artifact@v4
if: ${{ inputs.upload-artifacts }}
with:
if-no-files-found: 'error'
name: ${{ steps.package-name.outputs.RAPIDS_PACKAGE_NAME }}
path: ${{ steps.package-name.outputs.CONDA_OUTPUT_DIR }}
- name: Upload additional artifacts
if: "!cancelled()"
run: rapids-upload-artifacts-dir "cuda${RAPIDS_CUDA_VERSION%%.*}_$(arch)"
- name: Telemetry upload attributes
uses: rapidsai/shared-actions/telemetry-dispatch-stash-job-artifacts@main
continue-on-error: true
if: ${{ vars.TELEMETRY_ENABLED == 'true' }}
env:
# DOES NOT NEED alternative-gh-token-secret-name - github.token is enough and more limited
GH_TOKEN: ${{ github.token }}
exit 0
27 changes: 1 addition & 26 deletions .github/workflows/conda-cpp-post-build-checks.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -99,29 +99,4 @@ jobs:
env:
GH_TOKEN: ${{ github.token }}
run: |
CPP_DIR=$(rapids-download-conda-from-github cpp)
EXTRACTED_DIR=$(rapids-extract-conda-files "${CPP_DIR}")
echo "RAPIDS_EXTRACTED_DIR=${EXTRACTED_DIR}" >> "${GITHUB_ENV}"
- name: Get weak detection tool
uses: actions/checkout@v4
with:
repository: rapidsai/detect-weak-linking
ref: refs/heads/main
path: "./tool/"
fetch-depth: 0
persist-credentials: true
- name: Verify CUDA libraries have no public kernel entry points
env:
SYMBOL_EXCLUSIONS: ${{ inputs.symbol_exclusions }}
run: |
if [ -n "${SYMBOL_EXCLUSIONS}" ]; then
python ./tool/detect.py "${RAPIDS_EXTRACTED_DIR}"/lib -e "${SYMBOL_EXCLUSIONS}"
else
python ./tool/detect.py "${RAPIDS_EXTRACTED_DIR}"/lib
fi
- name: Telemetry upload attributes
uses: rapidsai/shared-actions/telemetry-dispatch-stash-job-artifacts@main
continue-on-error: true
if: ${{ vars.TELEMETRY_ENABLED == 'true' }}
env:
GH_TOKEN: ${{ github.token }}
exit 0
19 changes: 3 additions & 16 deletions .github/workflows/conda-cpp-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@ permissions:

jobs:
compute-matrix:
name: conda-cpp-tests (compute-matrix)
runs-on: ubuntu-latest
env:
BUILD_TYPE: ${{ inputs.build_type }}
Expand Down Expand Up @@ -217,22 +218,8 @@ jobs:
# NEEDS alternative-gh-token-secret_name - API limits need to be for whatever token is used for upload/download. Repo token may be a different pool for rate limits.
GH_TOKEN: ${{ inputs.alternative-gh-token-secret-name && secrets[inputs.alternative-gh-token-secret-name] || github.token }} # zizmor: ignore[overprovisioned-secrets]
- name: C++ tests
run: ${{ inputs.script }} # zizmor: ignore[template-injection]
run: |
exit 0
env:
# NEEDS alternative-gh-token-secret-name - may require a token with more permissions
GH_TOKEN: ${{ inputs.alternative-gh-token-secret-name && secrets[inputs.alternative-gh-token-secret-name] || github.token }} # zizmor: ignore[overprovisioned-secrets]
- name: Generate test report
uses: test-summary/action@31493c76ec9e7aa675f1585d3ed6f1da69269a86 # v2.4
with:
paths: "${{ env.RAPIDS_TESTS_DIR }}/*.xml"
if: always()
- name: Upload additional artifacts
if: "!cancelled()"
run: rapids-upload-artifacts-dir "cuda${RAPIDS_CUDA_VERSION%%.*}_$(arch)"
- name: Telemetry upload attributes
uses: rapidsai/shared-actions/telemetry-dispatch-stash-job-artifacts@main
continue-on-error: true
if: ${{ vars.TELEMETRY_ENABLED == 'true' }}
env:
# DOES NOT NEED alternative-gh-token-secret-name - github.token is enough and more limited
GH_TOKEN: ${{ github.token }}
35 changes: 5 additions & 30 deletions .github/workflows/conda-python-build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,9 @@ permissions:

jobs:
compute-matrix:
# Setting 'name' here helps differentiate jobs in the GitHub UI,
# especially when this workflow is >=2 levels deep (e.g. called by a workflow called by another workflow).
name: conda-python-build (compute-matrix)
runs-on: ubuntu-latest
outputs:
MATRIX: ${{ steps.compute-matrix.outputs.MATRIX }}
Expand Down Expand Up @@ -177,36 +180,8 @@ jobs:
# NEEDS alternative-gh-token-secret_name - API limits need to be for whatever token is used for upload/download. Repo token may be a different pool for rate limits.
GH_TOKEN: ${{ inputs.alternative-gh-token-secret-name && secrets[inputs.alternative-gh-token-secret-name] || github.token }} # zizmor: ignore[overprovisioned-secrets]
- name: Python build
run: ${{ inputs.script }} # zizmor: ignore[template-injection]
run: |
exit 0
env:
# NEEDS alternative-gh-token-secret-name - may require a token with more permissions
GH_TOKEN: ${{ inputs.alternative-gh-token-secret-name && secrets[inputs.alternative-gh-token-secret-name] || github.token }} # zizmor: ignore[overprovisioned-secrets]
- name: Get Package Name and Location
if: ${{ inputs.upload-artifacts }}
run: |
echo "RAPIDS_PACKAGE_NAME=$(RAPIDS_NO_PKG_EXTENSION=true rapids-package-name conda_python)" >> "${GITHUB_OUTPUT}"
echo "CONDA_OUTPUT_DIR=${RAPIDS_CONDA_BLD_OUTPUT_DIR}" >> "${GITHUB_OUTPUT}"
id: package-name
- name: Show files to be uploaded
if: ${{ inputs.upload-artifacts }}
env:
CONDA_OUTPUT_DIR: ${{ steps.package-name.outputs.CONDA_OUTPUT_DIR }}
run: |
echo "Contents of directory to be uploaded:"
ls -R "${CONDA_OUTPUT_DIR}"
- uses: actions/upload-artifact@v4
if: ${{ inputs.upload-artifacts }}
with:
if-no-files-found: 'error'
name: ${{ steps.package-name.outputs.RAPIDS_PACKAGE_NAME }}
path: ${{ steps.package-name.outputs.CONDA_OUTPUT_DIR }}
- name: Upload additional artifacts
if: "!cancelled()"
run: rapids-upload-artifacts-dir "cuda${RAPIDS_CUDA_VERSION%%.*}_$(arch)_py${RAPIDS_PY_VERSION//.}"
- name: Telemetry upload attributes
uses: rapidsai/shared-actions/telemetry-dispatch-stash-job-artifacts@main
continue-on-error: true
if: ${{ vars.TELEMETRY_ENABLED == 'true' }}
env:
# DOES NOT NEED alternative-gh-token-secret-name - github.token is enough and more limited
GH_TOKEN: ${{ github.token }}
33 changes: 4 additions & 29 deletions .github/workflows/conda-python-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,9 @@ permissions:

jobs:
compute-matrix:
# Setting 'name' here helps differentiate jobs in the GitHub UI,
# especially when this workflow is >=2 levels deep (e.g. called by a workflow called by another workflow).
name: conda-python-tests (compute-matrix)
runs-on: ubuntu-latest
env:
BUILD_TYPE: ${{ inputs.build_type }}
Expand Down Expand Up @@ -222,33 +225,5 @@ jobs:
# NEEDS alternative-gh-token-secret_name - API limits need to be for whatever token is used for upload/download. Repo token may be a different pool for rate limits.
GH_TOKEN: ${{ inputs.alternative-gh-token-secret-name && secrets[inputs.alternative-gh-token-secret-name] || github.token }} # zizmor: ignore[overprovisioned-secrets]
- name: Python tests
run: ${{ inputs.script }} # zizmor: ignore[template-injection]
env:
# NEEDS alternative-gh-token-secret-name - may require a token with more permissions
GH_TOKEN: ${{ inputs.alternative-gh-token-secret-name && secrets[inputs.alternative-gh-token-secret-name] || github.token }} # zizmor: ignore[overprovisioned-secrets]
- name: Generate test report
uses: test-summary/action@31493c76ec9e7aa675f1585d3ed6f1da69269a86 # v2.4
with:
paths: "${{ env.RAPIDS_TESTS_DIR }}/*.xml"
if: always()
- name: Run codecov
if: inputs.run_codecov
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
run: |
codecovcli \
-v \
upload-process \
-C ${{ github.sha }} \
-s "${RAPIDS_COVERAGE_DIR}" \
--handle-no-reports-found
- name: Upload additional artifacts
if: "!cancelled()"
run: rapids-upload-artifacts-dir "cuda${RAPIDS_CUDA_VERSION%%.*}_$(arch)_py${RAPIDS_PY_VERSION//.}"
- name: Telemetry upload attributes
uses: rapidsai/shared-actions/telemetry-dispatch-stash-job-artifacts@main
continue-on-error: true
if: ${{ vars.TELEMETRY_ENABLED == 'true' }}
env:
# DOES NOT NEED alternative-gh-token-secret-name - github.token is enough and more limited
GH_TOKEN: ${{ github.token }}
exit 0
9 changes: 2 additions & 7 deletions .github/workflows/conda-upload-packages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -104,14 +104,9 @@ jobs:
fi
echo "RAPIDS_CONDA_TOKEN=${RAPIDS_CONDA_TOKEN}" >> "${GITHUB_ENV}"
- name: Upload packages
run: rapids-upload-to-anaconda-github
run: |
exit 0
env:
SKIP_UPLOAD_PKGS: ${{ inputs.skip_upload_pkgs }}
RAPIDS_CONDA_UPLOAD_LABEL: ${{ inputs.upload_to_label }}
GH_TOKEN: ${{ github.token }}
- name: Telemetry upload attributes
uses: rapidsai/shared-actions/telemetry-dispatch-stash-job-artifacts@main
continue-on-error: true
if: ${{ vars.TELEMETRY_ENABLED == 'true' }}
env:
GH_TOKEN: ${{ github.token }}
16 changes: 2 additions & 14 deletions .github/workflows/custom-job.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -164,21 +164,9 @@ jobs:
# NEEDS alternative-gh-token-secret_name - API limits need to be for whatever token is used for upload/download. Repo token may be a different pool for rate limits.
GH_TOKEN: ${{ inputs.alternative-gh-token-secret-name && secrets[inputs.alternative-gh-token-secret-name] || github.token }} # zizmor: ignore[overprovisioned-secrets]
- name: Run script
run: ${INPUTS_SCRIPT}
run: |
exit 0
env:
# NEEDS alternative-gh-token-secret-name - may require a token with more permissions
GH_TOKEN: ${{ inputs.alternative-gh-token-secret-name && secrets[inputs.alternative-gh-token-secret-name] || github.token }} # zizmor: ignore[overprovisioned-secrets]
INPUTS_SCRIPT: ${{ inputs.script }}
- name: Upload file to GitHub Artifact
uses: actions/upload-artifact@v4
with:
name: ${{ inputs.artifact-name }}
path: ${{ inputs.file_to_upload }}
if-no-files-found: ignore
- name: Telemetry upload attributes
uses: rapidsai/shared-actions/telemetry-dispatch-stash-job-artifacts@main
continue-on-error: true
if: ${{ vars.TELEMETRY_ENABLED == 'true' }}
env:
# DOES NOT NEED alternative-gh-token-secret-name - github.token is enough and more limited
GH_TOKEN: ${{ github.token }}
56 changes: 5 additions & 51 deletions .github/workflows/wheels-build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,9 @@ permissions:

jobs:
compute-matrix:
# Setting 'name' here helps differentiate jobs in the GitHub UI,
# especially when this workflow is >=2 levels deep (e.g. called by a workflow called by another workflow).
name: wheels-build (${{ inputs.package-name }}, compute-matrix)
runs-on: ubuntu-latest
outputs:
MATRIX: ${{ steps.compute-matrix.outputs.MATRIX }}
Expand Down Expand Up @@ -238,59 +241,10 @@ jobs:
# NEEDS alternative-gh-token-secret_name - API limits need to be for whatever token is used for upload/download. Repo token may be a different pool for rate limits.
GH_TOKEN: ${{ inputs.alternative-gh-token-secret-name && secrets[inputs.alternative-gh-token-secret-name] || github.token }} # zizmor: ignore[overprovisioned-secrets]
- name: Build and repair the wheel
run: ${{ inputs.script }} # zizmor: ignore[template-injection]
run: |
exit 0
env:
# NEEDS alternative-gh-token-secret-name - may require a token with more permissions
GH_TOKEN: ${{ inputs.alternative-gh-token-secret-name && secrets[inputs.alternative-gh-token-secret-name] || github.token }} # zizmor: ignore[overprovisioned-secrets]
# Use a shell that loads the rc file so that we get the compiler settings
shell: bash -leo pipefail {0}

- name: Get package name
if: ${{ inputs.upload-artifacts }}
env:
APPEND_CUDA_SUFFIX: ${{ inputs.append-cuda-suffix }}
PACKAGE_NAME: ${{ inputs.package-name }}
PACKAGE_TYPE: ${{ inputs.package-type }}
PURE_WHEEL: ${{ inputs.pure-wheel }}
run: |
if [ -z "${PACKAGE_NAME}" ]; then
PACKAGE_NAME="${RAPIDS_REPOSITORY#*/}"
fi
export "RAPIDS_PY_CUDA_SUFFIX=$(rapids-wheel-ctk-name-gen "${RAPIDS_CUDA_VERSION}")"
if [ "${APPEND_CUDA_SUFFIX}" = "true" ]; then
export "RAPIDS_PY_WHEEL_NAME=${PACKAGE_NAME}_${RAPIDS_PY_CUDA_SUFFIX}"
else
export "RAPIDS_PY_WHEEL_NAME=${PACKAGE_NAME}"
fi
if [ "${PURE_WHEEL}" = "true" ]; then
export "RAPIDS_PY_WHEEL_PURE=1"
fi
echo "RAPIDS_PACKAGE_NAME=$(RAPIDS_NO_PKG_EXTENSION=true rapids-package-name "wheel_${PACKAGE_TYPE}")" >> "${GITHUB_OUTPUT}"
echo "WHEEL_OUTPUT_DIR=${RAPIDS_WHEEL_BLD_OUTPUT_DIR}" >> "${GITHUB_OUTPUT}"
id: package-name

- name: Show files to be uploaded
if: ${{ inputs.upload-artifacts }}
env:
WHEEL_OUTPUT_DIR: ${{ steps.package-name.outputs.WHEEL_OUTPUT_DIR }}
run: |
echo "Contents of directory to be uploaded:"
ls -R "$WHEEL_OUTPUT_DIR"

- uses: actions/upload-artifact@v4
if: ${{ inputs.upload-artifacts }}
with:
if-no-files-found: 'error'
name: ${{ steps.package-name.outputs.RAPIDS_PACKAGE_NAME }}
path: ${{ steps.package-name.outputs.WHEEL_OUTPUT_DIR }}

- name: Upload additional artifacts
if: "!cancelled()"
run: rapids-upload-artifacts-dir "cuda${RAPIDS_CUDA_VERSION%%.*}_$(arch)_py${RAPIDS_PY_VERSION//.}"
- name: Telemetry upload attributes
if: ${{ vars.TELEMETRY_ENABLED == 'true' }}
env:
# DOES NOT NEED alternative-gh-token-secret-name - github.token is enough and more limited
GH_TOKEN: ${{ github.token }}
uses: rapidsai/shared-actions/telemetry-dispatch-stash-job-artifacts@main
continue-on-error: true
Loading