Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch to new CI wheel building pipeline #1305

Merged
merged 35 commits into from
Jul 25, 2023
Merged
Show file tree
Hide file tree
Changes from 34 commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
cfb9afc
Switch to local script
vyasr Jul 18, 2023
4f53100
Fix permissions
vyasr Jul 18, 2023
c884fd5
Switch to local test script
vyasr Jul 18, 2023
d396c2d
Fix branch name
vyasr Jul 18, 2023
a9977a1
bump
vyasr Jul 18, 2023
a12aa3d
bump
vyasr Jul 19, 2023
b30ddaf
Cleanup
vyasr Jul 19, 2023
235c66a
bump
vyasr Jul 19, 2023
12450cb
bump
vyasr Jul 19, 2023
7c695df
Quote the name
vyasr Jul 19, 2023
16e39fc
Fix use of subshell
vyasr Jul 19, 2023
f2bdc1e
Fix name
vyasr Jul 19, 2023
cb6adf8
Set arch
vyasr Jul 19, 2023
6a24ecc
Remove index setting
vyasr Jul 19, 2023
8620675
Update workflow filename
vyasr Jul 19, 2023
eec572d
bump
vyasr Jul 20, 2023
8a9de4f
bump
vyasr Jul 20, 2023
1b59dcb
Apply suggestions from code review
vyasr Jul 20, 2023
9482d7a
Set build script
vyasr Jul 20, 2023
be33066
Update build workflow
vyasr Jul 20, 2023
f2839d5
Merge branch 'feat/build_wheel_scripts' into feat/test_wheel_scripts
vyasr Jul 20, 2023
e5194fc
Update to test the full pipeline
vyasr Jul 20, 2023
abd9cf3
Also point the build scripts at the local branch
vyasr Jul 20, 2023
407efaa
Fix branch names
vyasr Jul 20, 2023
57af47b
Fix filename
vyasr Jul 20, 2023
522e0e6
Add to build list
vyasr Jul 20, 2023
6012436
Fix filename again
vyasr Jul 20, 2023
529642b
Try hard-coding the build type
vyasr Jul 20, 2023
e964ec6
Fix default for publish
vyasr Jul 20, 2023
7bc9072
Remove publish workflow again
vyasr Jul 20, 2023
1bc7903
Remove unnecessary comment
vyasr Jul 20, 2023
99a037d
Reduce verbosity
vyasr Jul 20, 2023
38a8be0
Switch back to main branch
vyasr Jul 21, 2023
f645cf6
PR review
vyasr Jul 25, 2023
801f049
Try removing the mkdir
vyasr Jul 25, 2023
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
8 changes: 3 additions & 5 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -68,19 +68,17 @@ jobs:
run_script: "ci/build_docs.sh"
wheel-build:
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-manylinux-build.yml@branch-23.08
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-build.yaml@branch-23.08
with:
build_type: ${{ inputs.build_type || 'branch' }}
branch: ${{ inputs.branch }}
sha: ${{ inputs.sha }}
date: ${{ inputs.date }}
package-name: rmm
package-dir: python
skbuild-configure-options: "-DRMM_BUILD_WHEELS=ON"
script: ci/build_wheel.sh
wheel-publish:
needs: wheel-build
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-manylinux-publish.yml@branch-23.08
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-publish.yaml@branch-23.08
with:
build_type: ${{ inputs.build_type || 'branch' }}
branch: ${{ inputs.branch }}
Expand Down
12 changes: 4 additions & 8 deletions .github/workflows/pr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -64,18 +64,14 @@ jobs:
wheel-build:
needs: checks
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-manylinux-build.yml@branch-23.08
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-build.yaml@branch-23.08
with:
build_type: pull-request
package-dir: python
package-name: rmm
skbuild-configure-options: "-DRMM_BUILD_WHEELS=ON"
script: ci/build_wheel.sh
wheel-tests:
needs: wheel-build
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-manylinux-test.yml@branch-23.08
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-test.yaml@branch-23.08
with:
build_type: pull-request
package-name: rmm
test-unittest: "python -m pytest ./python/rmm/tests"
test-smoketest: "python ./ci/wheel_smoke_test.py"
script: ci/test_wheel.sh
5 changes: 2 additions & 3 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,10 @@ jobs:
sha: ${{ inputs.sha }}
wheel-tests:
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-manylinux-[email protected]
uses: rapidsai/shared-action-workflows/.github/workflows/[email protected]
with:
build_type: nightly
branch: ${{ inputs.branch }}
date: ${{ inputs.date }}
sha: ${{ inputs.sha }}
package-name: rmm
test-unittest: "python -m pytest ./python/rmm/tests"
script: ci/test_wheel.sh
26 changes: 26 additions & 0 deletions ci/build_wheel.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
#!/bin/bash
# Copyright (c) 2023, NVIDIA CORPORATION.

set -euo pipefail

source rapids-configure-sccache
source rapids-date-string

# Use gha-tools rapids-pip-wheel-version to generate wheel version then
# update the necessary files
version_override="$(rapids-pip-wheel-version ${RAPIDS_DATE_STRING})"

RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen ${RAPIDS_CUDA_VERSION})"

ci/release/apply_wheel_modifications.sh ${version_override} "-${RAPIDS_PY_CUDA_SUFFIX}"
echo "The package name and/or version was modified in the package source. The git diff is:"
git diff

cd python

SKBUILD_CONFIGURE_OPTIONS="-DRMM_BUILD_WHEELS=ON" python -m pip wheel . -w dist -vvv --no-deps --disable-pip-version-check

mkdir -p final_dist
python -m auditwheel repair -w final_dist dist/*

RAPIDS_PY_WHEEL_NAME="rmm_${RAPIDS_PY_CUDA_SUFFIX}" rapids-upload-wheels-to-s3 final_dist
18 changes: 18 additions & 0 deletions ci/test_wheel.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#!/bin/bash
# Copyright (c) 2023, NVIDIA CORPORATION.

set -eou pipefail

mkdir -p ./dist
RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen ${RAPIDS_CUDA_VERSION})"
RAPIDS_PY_WHEEL_NAME="rmm_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./dist

# echo to expand wildcard before adding `[extra]` requires for pip
python -m pip install $(echo ./dist/rmm*.whl)[test]

# Run smoke tests for aarch64 pull requests
if [ "$(arch)" == "aarch64" && ${RAPIDS_BUILD_TYPE} == "pull-request" ]; then
python ./ci/wheel_smoke_test.py
else
python -m pytest ./python/rmm/tests
fi