Skip to content

release: generate release catalog companions for build artifacts - #609

Open
msarahan wants to merge 32 commits into
mainfrom
codex/release-build-output-manifests
Open

msarahan wants to merge 32 commits into
mainfrom
codex/release-build-output-manifests

Conversation

@msarahan

@msarahan msarahan commented Aug 3, 2026 •

Copy link
Copy Markdown
Contributor

Why

RAPIDS currently creates a release by tagging repositories in dependency order and allowing those tags to trigger builds that publish directly to release channels. That makes the tag a prerequisite for producing the artifacts, forces downstream repositories to wait for upstream publication and CDN synchronization, and prevents us from validating the complete final-version artifact set before making it public.

The proposed release platform reverses that relationship: build the complete release candidate first, verify the exact bytes as a set, and only then promote those approved bytes and tag their source commits. For that to work, the shared build workflows need a release-candidate mode that:

  • produces final-version artifacts without pushing a tag;
  • keeps candidate artifacts out of public package channels;
  • associates artifacts with the source and settings that produced it; and
  • places artifacts and their evidence in private storage where the release platform can collect them by frozen release train.
  • reuses existing build artifact from private storage

This PR supplies that integration for the standard Conda, wheel, and custom build workflows. It consumes the release catalog action developed in rapidsai/shared-actions#136. As a result, all of our projects that use standard conda and wheel workflows will be automatically enrolled and enabled for participation in the new release platform without any additional per-repo modification.

What changes

This adds a new build type, release-candidate, to the existing choices: [branch, nightly, pull-request]. The release-candidate build type selects the behaviors associated with the new release platform:

  • Enables local tagging so that the packages that the builds that get produced appear "final" in the sense that it has no alpha tag in its version. For example, 26.10.00, not 26.10.00a123
  • Disables any upload to public repos (anaconda.org / nightly channels)
  • Skips test (tests are run later as a validation step)
  • Uploads artifacts and extra identifying metadata to the private S3 bucket

See the shared-actions release catalog documentation for the companion layout, schemas, package parsing rules, evidence semantics, and S3 layout.

Tracks rapidsai/build-infra#381.

@msarahan msarahan added feature request New feature or request non-breaking Introduces a non-breaking change labels Aug 3, 2026
@msarahan
msarahan force-pushed the codex/release-build-output-manifests branch 2 times, most recently from 3b37e61 to d95d03f Compare August 3, 2026 18:35
@msarahan
msarahan force-pushed the codex/release-build-output-manifests branch from 407b824 to f0cf91b Compare August 4, 2026 14:50
@msarahan msarahan changed the title Add release build output manifests [DO NOT MERGE] Add release build output manifests Aug 4, 2026
@msarahan
msarahan force-pushed the codex/release-build-output-manifests branch from f0cf91b to cc9a937 Compare August 4, 2026 15:01
@msarahan
msarahan marked this pull request as ready for review August 4, 2026 16:50
@msarahan
msarahan requested a review from a team as a code owner August 4, 2026 16:50
@msarahan
msarahan requested review from bdice and removed request for a team August 4, 2026 16:50
@msarahan
msarahan force-pushed the codex/release-build-output-manifests branch from cc9a937 to 8f57ac8 Compare August 5, 2026 18:56
@msarahan msarahan changed the title [DO NOT MERGE] Add release build output manifests Add release build output manifests Aug 6, 2026
msarahan added a commit to rapidsai/shared-actions that referenced this pull request Aug 6, 2026
# What is this?

This is the reusable action that creates manifests for the artifacts
produced by our open source builds. This is part of a plan for:

* rapidsai/release-scripts#102
* [For scanning purposes, especially of binary artifacts like wheels, we
need to know what software was used at build time. It is often not
possible to reverse engineer this information with what we have
today.](https://gitlab-master.nvidia.com/RAPIDS/nspect-manager/-/merge_requests/5)

The implementation here follows our existing dispatch pattern, rather
than earlier efforts that basically did the same thing on
shared-workflows (rapidsai/shared-workflows#609)
@msarahan
msarahan force-pushed the codex/release-build-output-manifests branch 2 times, most recently from a946d6d to f19cf9f Compare August 6, 2026 22:51
@msarahan
msarahan force-pushed the codex/release-build-output-manifests branch 2 times, most recently from 737648d to b548f50 Compare August 7, 2026 18:59
@msarahan
msarahan force-pushed the codex/release-build-output-manifests branch 3 times, most recently from 046f14c to 57dd7a2 Compare August 13, 2026 15:40
@msarahan
msarahan force-pushed the codex/release-build-output-manifests branch from d84bf34 to 86689f7 Compare September 22, 2026 16:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature request New feature or request non-breaking Introduces a non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants