diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 19249b2dae..c81327ec13 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -72,7 +72,7 @@ jobs: packages: read pull-requests: read secrets: inherit # zizmor: ignore[secrets-inherit] - uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@main + uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@codex/release-build-output-manifests strategy: fail-fast: false matrix: ${{ fromJSON(needs.rocky8-clib-standalone-build-matrix.outputs.matrix) }} @@ -87,7 +87,16 @@ jobs: requires_license_builder: true script: "ci/build_standalone_c.sh" artifact-name: "libcuvs_c_${{ matrix.CUDA_VER }}_${{ matrix.ARCH }}.tar.gz" - file_to_upload: "libcuvs_c.tar.gz" + file_to_upload: | + libcuvs_c.tar.gz + libcuvs_c.release-package.json + release-build-output: >- + { + "artifact_type": "custom", + "component_id": "archive:libcuvs-c", + "package_file": "libcuvs_c.release-package.json", + "artifacts": [{"path": "libcuvs_c.tar.gz"}] + } sha: ${{ inputs.sha }} rust-build-matrix: needs: cpp-build @@ -173,7 +182,7 @@ jobs: packages: read pull-requests: read secrets: inherit # zizmor: ignore[secrets-inherit] - uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@main + uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@codex/release-build-output-manifests # Artifacts are not published from these jobs, so it's safe to run for multiple CUDA versions. # If these jobs start producing artifacts, the names will have to differentiate between CUDA versions. strategy: @@ -188,6 +197,14 @@ jobs: script: "ci/build_java.sh" artifact-name: "cuvs-java-cuda${{ matrix.CUDA_VER }}" file_to_upload: "java/cuvs-java/target/" + release-build-output: >- + { + "artifact_type": "custom", + "component_id": "maven:cuvs-java", + "output_directory": "java/cuvs-java/target", + "package_file": "cuvs-java.release-package.json", + "artifacts": [{"path": "cuvs-java-*-x86_64-cuda*.jar"}] + } sha: ${{ inputs.sha }} python-build: needs: [build-details, cpp-build] diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index b4582957ee..aa32b446e2 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -520,7 +520,7 @@ jobs: packages: read pull-requests: read secrets: inherit # zizmor: ignore[secrets-inherit] - uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@main + uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@codex/release-build-output-manifests strategy: fail-fast: false matrix: ${{ fromJSON(needs.rocky8-clib-standalone-build-matrix.outputs.matrix) }} @@ -534,7 +534,16 @@ jobs: requires_license_builder: true script: "ci/build_standalone_c.sh --build-tests" artifact-name: "libcuvs_c_${{ matrix.CUDA_VER }}_${{ matrix.ARCH }}.tar.gz" - file_to_upload: "libcuvs_c.tar.gz" + file_to_upload: | + libcuvs_c.tar.gz + libcuvs_c.release-package.json + release-build-output: >- + { + "artifact_type": "custom", + "component_id": "archive:libcuvs-c", + "package_file": "libcuvs_c.release-package.json", + "artifacts": [{"path": "libcuvs_c.tar.gz"}] + } sha: ${{ inputs.sha }} rocky8-clib-tests-matrix: needs: [rocky8-clib-standalone-build, changed-files] @@ -585,7 +594,7 @@ jobs: packages: read pull-requests: read secrets: inherit # zizmor: ignore[secrets-inherit] - uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@main + uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@codex/release-build-output-manifests # Artifacts are not published from these jobs, so it's safe to run for multiple CUDA versions. # If these jobs start producing artifacts, the names will have to differentiate between CUDA versions. strategy: @@ -599,6 +608,14 @@ jobs: script: "ci/test_java.sh" artifact-name: "cuvs-java-cuda${{ matrix.CUDA_VER }}" file_to_upload: "java/cuvs-java/target/" + release-build-output: >- + { + "artifact_type": "custom", + "component_id": "maven:cuvs-java", + "output_directory": "java/cuvs-java/target", + "package_file": "cuvs-java.release-package.json", + "artifacts": [{"path": "cuvs-java-*-x86_64-cuda*.jar"}] + } rust-build-matrix: needs: [conda-cpp-build, changed-files] permissions: diff --git a/ci/build_java.sh b/ci/build_java.sh index 2e363bb452..3e322d80aa 100755 --- a/ci/build_java.sh +++ b/ci/build_java.sh @@ -1,5 +1,5 @@ #!/bin/bash -# SPDX-FileCopyrightText: Copyright (c) 2025-2026, NVIDIA CORPORATION. +# SPDX-FileCopyrightText: Copyright (c) 2025-2026, NVIDIA CORPORATION & AFFILIATES. All rights reserved. # SPDX-License-Identifier: Apache-2.0 set -euo pipefail @@ -58,6 +58,14 @@ export RAPIDS_CUDA_MAJOR bash ./build.sh java "${EXTRA_BUILD_ARGS[@]}" +if [[ "${EXITCODE}" -eq 0 ]]; then + JAVA_PACKAGE_VERSION="$(sed -n 's/.*\([^<]*\)<\/version>.*/\1/p' java/cuvs-java/pom.xml | head -n 1)" + jq -n \ + --arg version "${JAVA_PACKAGE_VERSION}" \ + '{ecosystem: "maven", name: "com.nvidia.cuvs:cuvs-java", version: $version}' \ + >java/cuvs-java/target/cuvs-java.release-package.json +fi + sccache --show-adv-stats sccache --stop-server >/dev/null 2>&1 || true diff --git a/ci/build_standalone_c.sh b/ci/build_standalone_c.sh index 94cffe1d64..d963a70edf 100755 --- a/ci/build_standalone_c.sh +++ b/ci/build_standalone_c.sh @@ -99,3 +99,7 @@ license-builder . --output-json c/build/install/licenses.json --output-txt c/bui rapids-logger "Begin c tarball creation" tar czf libcuvs_c.tar.gz -C c/build/install/ . ls -lh libcuvs_c.tar.gz +jq -n \ + --arg version "${RAPIDS_PACKAGE_VERSION}" \ + '{ecosystem: "archive", name: "libcuvs-c", version: $version}' \ + >libcuvs_c.release-package.json