Skip to content

AZP/RELEASE: publish UCXX in UCX release pipeline#11488

Draft
Alexey-Rivkin wants to merge 5 commits into
openucx:masterfrom
Alexey-Rivkin:ucxx-azure-release
Draft

AZP/RELEASE: publish UCXX in UCX release pipeline#11488
Alexey-Rivkin wants to merge 5 commits into
openucx:masterfrom
Alexey-Rivkin:ucxx-azure-release

Conversation

@Alexey-Rivkin
Copy link
Copy Markdown
Contributor

@Alexey-Rivkin Alexey-Rivkin commented May 26, 2026

What?

Build + publish UCXX (conda, libucxx/ucxx wheels, docs) from the UCX release pipeline - on a release tag and a daily cron.

How?

  • Daily schedules: cron + stage condition (release tag OR Schedule).
  • Per-slice wheel container (cuda12/cuda13), py3.11, ucxx pinned v0.51.00a.
  • Upload steps pick release vs nightly token from Build.Reason.
  • Publish (anaconda.org) + docs (S3) gated condition: false until tokens land.
  • distributed-ucxx excluded (not upstreamed, matches PR pipeline).

Depends on #11473 - its first 4 commits belong there.

@Alexey-Rivkin Alexey-Rivkin changed the title AZP: build + publish UCXX in UCX release pipeline (Phase 3) AZP/RELEASE: build + publish UCXX in UCX release pipeline (Phase 3) May 26, 2026
@Alexey-Rivkin Alexey-Rivkin added the WIP-DNM Work in progress / Do not review label May 26, 2026
@Alexey-Rivkin Alexey-Rivkin changed the title AZP/RELEASE: build + publish UCXX in UCX release pipeline (Phase 3) AZP/RELEASE: publish UCXX in UCX release pipeline May 26, 2026
@Alexey-Rivkin Alexey-Rivkin force-pushed the ucxx-azure-release branch 2 times, most recently from 17c8289 to 715010d Compare May 26, 2026 16:44
UCXX tests run in rapidsai/ci-conda and ci-wheel base images. Thin
wrappers open /opt/conda and /pyenv so the Azure-injected step user
can use them, and add gdb so ucxx's timeout_with_stack.py can capture
stacks on hangs.
Pull rapidsai/ucxx as a pipeline resource and add two stages gated on
Static_check: UCXX_build (conda + wheel packages, docs, devcontainer,
checks) then UCXX_tests (conda C++/Python on the CPU + GPU matrix).
Covers x86_64 + aarch64, CUDA 12 + 13; GPU tests on amd64/cuda13.
distributed-ucxx excluded (not upstreamed).
build_ucxx.sh and test_ucxx.sh wrap UCXX's ci/*.sh entrypoints for the
Azure agents: stage rapids download shims, set the wheel toolchain, run
the conda/wheel build, C++ gtest and Python test phases. CPU slices
disable CUDA-only gtests; GPU slices force the host CUDA driver so
cuInit matches the MPS daemon. test_client_shutdown is skipped (flaky
teardown under MPS contention).
Each UCX PR must test a fixed UCXX revision; refs/heads/main drifts, so a
green run says nothing durable. Pin to a tag and bump it deliberately as new
UCXX releases are validated.
@Alexey-Rivkin Alexey-Rivkin force-pushed the ucxx-azure-release branch 3 times, most recently from 01e3211 to 288c835 Compare June 3, 2026 08:20
Extend the release pipeline to build UCXX conda + libucxx/ucxx wheels + docs
on a UCX release tag and on a daily cron, reusing the PR pipeline's UCXX
scripts and CUDA-pinned images. Upload/publish steps (anaconda.org for
conda+wheels, S3 for docs) are wired but gated `condition: false` until the
rapids tokens are provisioned in the Azure secret store - each step's TODO
names its secret.

Builds on the PR-pipeline work: per-slice wheel container (cuda12/cuda13),
py3.11 wheels, ucxx pinned to v0.51.00a, and the host-driver override that
the wheel image needs. PR pipeline unchanged.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

WIP-DNM Work in progress / Do not review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant