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

Build conda packages using rattler-build #248

Draft
wants to merge 27 commits into
base: branch-0.42
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from 24 commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
c53802c
Single output builds
vyasr Jul 18, 2024
9905e18
Switch to multi-output recipe and get everything working
vyasr Jul 18, 2024
857342c
Put back variants, add link
vyasr Jul 18, 2024
0a9c27b
Lots of recipe cleanup
vyasr Jul 18, 2024
2a5e71f
Numpy is no longer a build dependency
vyasr Jul 18, 2024
4505317
Exclude undesired files
vyasr Jul 18, 2024
df44fe2
Document rattler-build options
vyasr Jul 19, 2024
d617306
See cache results
vyasr Jul 19, 2024
83e94e2
Move comments above command to avoid breaking lines
vyasr Jul 19, 2024
790a376
Fix typo
vyasr Jul 19, 2024
4ec644d
Make sure to get cudatoolkit from cf
vyasr Jul 19, 2024
aecc402
Add one more pinning
vyasr Jul 19, 2024
2f4127f
Fix typo
vyasr Jul 19, 2024
42efd85
One more channel priority fix
vyasr Jul 19, 2024
d1f02eb
One more pin
vyasr Jul 19, 2024
4cfcaff
More pins
vyasr Jul 19, 2024
4fafa77
Add another pin
vyasr Jul 19, 2024
42d2bce
Hopefully last pin?
vyasr Jul 19, 2024
a442937
examples pin
vyasr Jul 19, 2024
3f2bb54
Make sure git is available to populate the fields during build
vyasr Jul 19, 2024
50598cc
Try including git in the host env instead
vyasr Jul 19, 2024
5bb02b1
Try including git in both directories
vyasr Jul 19, 2024
3d9203c
Remove git from host envs
vyasr Jul 20, 2024
5dcf3ee
Add run exports to every output
vyasr Jul 20, 2024
5f22b91
Update to latest rattler-build for proper cache run exports support.
vyasr Aug 12, 2024
98d7769
Merge branch 'branch-0.41' of github.com:rapidsai/ucxx into feat/ratt…
msarahan Nov 14, 2024
75d1545
need to echo
msarahan Nov 14, 2024
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
25 changes: 23 additions & 2 deletions ci/build_cpp.sh
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,28 @@ rapids-print-env

rapids-logger "Begin C++ and Python builds"

rapids-conda-retry mambabuild \
conda/recipes/ucxx
# TODO: Upstream this to the image.
mamba install rattler-build -c conda-forge

# Notes on the comments in the command below (some things like file renamings
# should be done before merging):
# - rattler-build uses recipe.yaml by default, not meta.yaml.
# - rattler-build uses variants.yaml by default, not conda_build_config.yaml
# - rattler-build does not respect .condarc, so channels and the output dir
# must be explicitly specified
# - The multi-output cache is currently an experimental feature.
# (https://prefix-dev.github.io/rattler-build/dev/multiple_output_cache/)
# - By default rattler-build adds a timestamp that defeats sccache caching,
# which --no-build-id turns off
RAPIDS_PACKAGE_VERSION=$(rapids-generate-version) rattler-build build \
--recipe conda/recipes/ucxx/meta.yaml \
--variant-config conda/recipes/ucxx/conda_build_config.yaml \
-c rapidsai-nightly -c conda-forge \
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We'll have to use rapids-is-release-build to switch between rapidsai and rapidsai-nightly or something similar.

--output-dir ${RAPIDS_CONDA_BLD_OUTPUT_DIR} \
--experimental \
--no-build-id

echo "sccache stats:"
sccache -s

rapids-upload-conda-to-s3 cpp
7 changes: 6 additions & 1 deletion conda/recipes/ucxx/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,10 @@
# SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES.
# SPDX-License-Identifier: BSD-3-Clause

export ucxx_ROOT="$(realpath ./cpp/build)"
export LIB_BUILD_DIR="${PREFIX}/tmp/ucx_build/"
./build.sh -n -v libucxx libucxx_python benchmarks examples tests --cmake-args=\"-DCMAKE_INSTALL_LIBDIR=lib\"

cmake --install ${LIB_BUILD_DIR} --prefix ${PREFIX}/tmp/install/libucxx/
for component in python benchmarks examples testing; do
cmake --install ${LIB_BUILD_DIR} --component ${component} --prefix ${PREFIX}/tmp/install/${component}/
done
2 changes: 1 addition & 1 deletion conda/recipes/ucxx/build_and_install_ucxx.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,5 @@
# SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES.
# SPDX-License-Identifier: BSD-3-Clause

cmake --install cpp/build --component python
cp -r ${PREFIX}/tmp/install/python/* ${PREFIX}/
./build.sh ucxx
2 changes: 1 addition & 1 deletion conda/recipes/ucxx/conda_build_config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ python:
- 3.11

ucx:
- "==1.15.*"
- ">=1.15.0,<1.16.0a0"

gmock:
- ">=1.13.0"
Expand Down
9 changes: 2 additions & 7 deletions conda/recipes/ucxx/install_libucxx.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,5 @@
# SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES.
# SPDX-License-Identifier: BSD-3-Clause

cmake --install cpp/build
cmake --install cpp/build --component benchmarks

# For some reason RAPIDS headers are getting installed causing clobbering, which shouldn't happen.
# To workaround this issue for now, just remove all the RAPIDS headers that were installed to avoid clobbering.
# xref: https://github.com/rapidsai/ucxx/issues/20
rm -rf "${PREFIX}/include/rapids"
cp -r ${PREFIX}/tmp/install/libucxx/* ${PREFIX}/
cp -r ${PREFIX}/tmp/install/benchmarks/* ${PREFIX}/
2 changes: 1 addition & 1 deletion conda/recipes/ucxx/install_libucxx_examples.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@
# SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES.
# SPDX-License-Identifier: BSD-3-Clause

cmake --install cpp/build --component examples
cp -r ${PREFIX}/tmp/install/examples/* ${PREFIX}/
2 changes: 1 addition & 1 deletion conda/recipes/ucxx/install_libucxx_tests.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@
# SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES.
# SPDX-License-Identifier: BSD-3-Clause

cmake --install cpp/build --component testing
cp -r ${PREFIX}/tmp/install/testing/* ${PREFIX}/
Loading