Skip to content

Add shared Maven build workflow - #626

Open
msarahan wants to merge 2 commits into
mainfrom
codex/standardize-maven-workflow
Open

Add shared Maven build workflow#626
msarahan wants to merge 2 commits into
mainfrom
codex/standardize-maven-workflow

Conversation

@msarahan

@msarahanmsarahan commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Why

Consolidates Java package build steps into a common workflow. Anticipated to be used for cuvs, cudf, cuopt and any other future Java packages.

Users of this script no longer configure:

  • compute-matrix.yaml directly.
  • strategy.matrix and fromJSON(...).
  • Repeated permissions and secrets: inherit for internal jobs.
  • Architecture forwarding.
  • CUDA-pinned image-tag construction.
  • CUDA-major deduplication.
  • Per-classifier artifact-name construction.
  • A second matrix definition for packaged-JAR testing.

They still own:

  • Which repository script builds each Maven coordinate.
  • Output file paths.
  • Dependencies between coordinates, such as cuvs-lucene needing cuvs-java.
  • Changed-file gating.
  • Maven-repository assembly and publication.

So the downstream configuration becomes declarative: “build this coordinate using this script and image family,” instead of reconstructing the matrix execution machinery in every repository. It also centralizes the correctness-sensitive rule that a cu12 artifact must actually run in a CUDA 12-pinned image.

Deliberate publication boundary

This workflow does not gather or publish artifacts. cuOpt currently produces roughly 405 MB per classifier, so four classifiers can exceed the Sonatype Portal 1 GB bundle limit. Keeping gathering separate lets smaller artifacts use one Maven-repository-layout bundle while larger projects can split publication without changing the build contract. Maven signing and Central staging remain the responsibility of the existing maven-publish.yaml workflow.

Related: NVIDIA/cuopt#1818, rapidsai/build-infra#379

@msarahan
msarahan requested a review from a team as a code ownerSeptember 2, 2026 16:51
@msarahan
msarahan requested review from gforsyth and removed request for a teamSeptember 2, 2026 16:51
@msarahanmsarahan added feature request New feature or request non-breaking Introduces a non-breaking change labels Sep 2, 2026
@msarahan

Copy link
Copy Markdown
ContributorAuthor

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature requestNew feature or requestnon-breakingIntroduces a non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@msarahan