From 712c8122ba9c6762e49ca45c02aad92350259913 Mon Sep 17 00:00:00 2001 From: James Lamb Date: Thu, 28 Aug 2025 14:08:41 -0500 Subject: [PATCH 01/22] fix nightly tests --- .github/workflows/build.yaml | 26 +++++++++ .github/workflows/nightly.yaml | 101 +++++++++++++-------------------- .github/workflows/test.yaml | 26 +++++++++ 3 files changed, 91 insertions(+), 62 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 263b8e541..1875234bc 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -24,15 +24,41 @@ on: workflow_dispatch: inputs: branch: + description: | + branch: git branch the workflow run targets. + Required even when 'sha' is provided because it is also used for organizing artifacts. required: true type: string date: + description: "date: Date (YYYY-MM-DD) this run is for. Used to organize artifacts produced by nightly builds" required: true type: string sha: + description: "sha: full git commit SHA to check out" required: true type: string build_type: + description: "build_type: one of [branch, nightly, pull-request]" + type: string + default: nightly + workflow_call: + inputs: + branch: + description: | + branch: git branch the workflow run targets. + Required even when 'sha' is provided because it is also used for organizing artifacts. + required: true + type: string + date: + description: "date: Date (YYYY-MM-DD) this run is for. Used to organize artifacts produced by nightly builds" + required: true + type: string + sha: + description: "sha: full git commit SHA to check out" + required: true + type: string + build_type: + description: "build_type: one of [branch, nightly, pull-request]" type: string default: nightly diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 2feece10e..fafe7d50f 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -6,72 +6,49 @@ on: - cron: "0 5 * * *" # 5am UTC / 1am EST + echo "RAPIDS_REPOSITORY=${{ inputs.repo || github.repository }}" | tee --append "${GITHUB_ENV}" "${GITHUB_OUTPUT}" + sha="${{ inputs.sha }}" + if [[ "${sha}" == "" ]]; then + sha=$(git rev-parse HEAD) + fi + echo "RAPIDS_SHA=${sha}" | tee --append "${GITHUB_ENV}" "${GITHUB_OUTPUT}" + echo "RAPIDS_REF_NAME=${{ inputs.branch || github.ref_name }}" | tee --append "${GITHUB_ENV}" "${GITHUB_OUTPUT}" + echo "RAPIDS_NIGHTLY_DATE=${{ inputs.date }}" | tee --append "${GITHUB_ENV}" "${GITHUB_OUTPUT}" + if [[ -n "${{ inputs.build_workflow_name }}" ]]; then + echo "RAPIDS_BUILD_WORKFLOW_NAME=${{ inputs.build_workflow_name }}" | tee --append "${GITHUB_ENV}" "${GITHUB_OUTPUT}" + fi + jobs: - trigger-build: + build: runs-on: ubuntu-latest strategy: matrix: include: - cuopt_version: "25.10" - steps: - - uses: actions/checkout@v4 - - name: Trigger Pipeline - env: - GH_TOKEN: ${{ github.token }} - run: | - export CUOPT_BRANCH="branch-${{ matrix.cuopt_version }}" - export DATE=$(date +%F) - export SHA=$(gh api -q '.commit.sha' "repos/nvidia/cuopt/branches/${CUOPT_BRANCH}") - - gh workflow run build.yaml \ - -f branch="${CUOPT_BRANCH}" \ - -f sha="${SHA}" \ - -f date="${DATE}" \ - -f build_type=nightly - - # Wait a short bit for the workflow to register (optional) - sleep 3 - - # Get the latest run ID for this workflow on this branch - RUN_ID=$(gh run list --workflow=build.yaml --branch="${CUOPT_BRANCH}" --json databaseId --limit 1 | jq -r '.[0].databaseId') - - STATUS=$(gh run view $RUN_ID --json status,conclusion --jq '.status') - CONCLUSION=$(gh run view $RUN_ID --json status,conclusion --jq '.conclusion') - - while [[ "$STATUS" != "completed" || "$CONCLUSION" == "null" ]]; do - echo "Status: $STATUS, Conclusion: $CONCLUSION — waiting 10 seconds..." - sleep 10 - STATUS=$(gh run view $RUN_ID --json status,conclusion --jq '.status') - CONCLUSION=$(gh run view $RUN_ID --json status,conclusion --jq '.conclusion') - done - - echo "Workflow run finished with conclusion: $CONCLUSION" - - if [[ "$CONCLUSION" != "success" ]]; then - echo "Build did not succeed" - exit 1 - fi - - - trigger-test: +jobs: + get-run-info: runs-on: ubuntu-latest - needs: trigger-build - strategy: - matrix: - include: - - cuopt_version: "25.10" - steps: - - uses: actions/checkout@v4 - - name: Trigger Test - env: - GH_TOKEN: ${{ github.token }} - run: | - export CUOPT_BRANCH="branch-${{ matrix.cuopt_version }}" - export DATE=$(date +%F) - export SHA=$(gh api -q '.commit.sha' "repos/nvidia/cuopt/branches/${CUOPT_BRANCH}") - - gh workflow run test.yaml \ - -f branch=${CUOPT_BRANCH} \ - -f sha=${SHA} \ - -f date=${DATE} \ - -f build_type=nightly + shell: bash + run: | + BRANCHES=( + branch-25.10 + ) + for + + # latest commit on each branch + export RAPIDS_SHA="$(git ls-remote ${{ github.repositoryUrl }} refs/heads/${{ }} | awk '{print $1}')" + build: + uses: ./.github/workflows/build.yaml + with: + build_type: nightly + branch: branch-${{ matrix.cuopt_version }} + date: ${{ inputs.date }} + sha: ${{ inputs.sha }} + test: + needs: build + uses: ./.github/workflows/test.yaml + with: + build_type: nightly + branch: branch-${{ matrix.cuopt_version }} + date: ${{ inputs.date }} + sha: ${{ inputs.sha }} diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 80ba1f869..df35a256d 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -19,15 +19,41 @@ on: workflow_dispatch: inputs: branch: + description: | + branch: git branch the workflow run targets. + Required even when 'sha' is provided because it is also used for organizing artifacts. required: true type: string date: + description: "date: Date (YYYY-MM-DD) this run is for. Used to organize artifacts produced by nightly builds" required: true type: string sha: + description: "sha: full git commit SHA to check out" required: true type: string build_type: + description: "build_type: one of [branch, nightly, pull-request]" + type: string + default: nightly + workflow_call: + inputs: + branch: + description: | + branch: git branch the workflow run targets. + Required even when 'sha' is provided because it is also used for organizing artifacts. + required: true + type: string + date: + description: "date: Date (YYYY-MM-DD) this run is for. Used to organize artifacts produced by nightly builds" + required: true + type: string + sha: + description: "sha: full git commit SHA to check out" + required: true + type: string + build_type: + description: "build_type: one of [branch, nightly, pull-request]" type: string default: nightly From 2ade7ce95eb00e697abd91db3f02b35e2d6b83cd Mon Sep 17 00:00:00 2001 From: James Lamb Date: Thu, 28 Aug 2025 15:13:43 -0500 Subject: [PATCH 02/22] more changes --- .github/workflows/nightly.yaml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index fafe7d50f..378c27d55 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -30,10 +30,12 @@ jobs: runs-on: ubuntu-latest shell: bash run: | - BRANCHES=( - branch-25.10 - ) - for + MATRIX=" + - branch: '25.10' + sha: "\'$(git ls-remote https://github.com/NVIDIA/cuopt.git refs/heads/branch-25.10 | awk '{print $1}')\'" + " + echo "date=$(date +%F)" >> ${GITHUB_OUTPUT} + echo "" # latest commit on each branch export RAPIDS_SHA="$(git ls-remote ${{ github.repositoryUrl }} refs/heads/${{ }} | awk '{print $1}')" From 583ea2997cd06916897c1b890ccaf5688cf6a012 Mon Sep 17 00:00:00 2001 From: James Lamb Date: Thu, 28 Aug 2025 16:08:08 -0500 Subject: [PATCH 03/22] fix syntax --- .github/workflows/nightly.yaml | 58 ++++++++++++++-------------------- 1 file changed, 24 insertions(+), 34 deletions(-) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 378c27d55..80fd4202f 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -5,52 +5,42 @@ on: schedule: - cron: "0 5 * * *" # 5am UTC / 1am EST - - echo "RAPIDS_REPOSITORY=${{ inputs.repo || github.repository }}" | tee --append "${GITHUB_ENV}" "${GITHUB_OUTPUT}" - sha="${{ inputs.sha }}" - if [[ "${sha}" == "" ]]; then - sha=$(git rev-parse HEAD) - fi - echo "RAPIDS_SHA=${sha}" | tee --append "${GITHUB_ENV}" "${GITHUB_OUTPUT}" - echo "RAPIDS_REF_NAME=${{ inputs.branch || github.ref_name }}" | tee --append "${GITHUB_ENV}" "${GITHUB_OUTPUT}" - echo "RAPIDS_NIGHTLY_DATE=${{ inputs.date }}" | tee --append "${GITHUB_ENV}" "${GITHUB_OUTPUT}" - if [[ -n "${{ inputs.build_workflow_name }}" ]]; then - echo "RAPIDS_BUILD_WORKFLOW_NAME=${{ inputs.build_workflow_name }}" | tee --append "${GITHUB_ENV}" "${GITHUB_OUTPUT}" - fi - -jobs: - build: - runs-on: ubuntu-latest - strategy: - matrix: - include: - - cuopt_version: "25.10" jobs: - get-run-info: + compute-matrix: + id: compute-matrix runs-on: ubuntu-latest shell: bash run: | - MATRIX=" + # add more list items here to run nightlies for more branches + export CI_MATRIX=" - branch: '25.10' - sha: "\'$(git ls-remote https://github.com/NVIDIA/cuopt.git refs/heads/branch-25.10 | awk '{print $1}')\'" + sha: "\'$(git ls-remote ${{ github.repositoryUrl }} refs/heads/branch-25.10 | awk '{print $1}')\'" " - echo "date=$(date +%F)" >> ${GITHUB_OUTPUT} - echo "" + MATRIX="$( + yq -n -o json 'env(CI_MATRIX)' | \ + )" - # latest commit on each branch - export RAPIDS_SHA="$(git ls-remote ${{ github.repositoryUrl }} refs/heads/${{ }} | awk '{print $1}')" + echo "MATRIX=${MATRIX}" | tee --append "${GITHUB_OUTPUT}" + echo "date=$(date +%F)" | tee --append "${GITHUB_OUTPUT}" build: + needs: [compute-matrix] + strategy: + fail-fast: false + matrix: ${{ fromJSON(needs.compute-matrix.outputs.MATRIX) }} uses: ./.github/workflows/build.yaml with: build_type: nightly - branch: branch-${{ matrix.cuopt_version }} - date: ${{ inputs.date }} - sha: ${{ inputs.sha }} + branch: ${{ matrix.branch }} + date: ${{ needs.compute-matrix.outputs.date }} + sha: ${{ matrix.sha }} test: - needs: build + needs: [compute-matrix, build] + strategy: + fail-fast: false + matrix: ${{ fromJSON(needs.compute-matrix.outputs.MATRIX) }} uses: ./.github/workflows/test.yaml with: build_type: nightly - branch: branch-${{ matrix.cuopt_version }} - date: ${{ inputs.date }} - sha: ${{ inputs.sha }} + branch: ${{ matrix.branch }} + date: ${{ needs.compute-matrix.outputs.date }} + sha: ${{ matrix.sha }} From fbb17419de2d79a3f88a9d4e6b708d3cac1ed693 Mon Sep 17 00:00:00 2001 From: James Lamb Date: Thu, 28 Aug 2025 16:17:37 -0500 Subject: [PATCH 04/22] fix syntax --- .github/workflows/nightly.yaml | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 80fd4202f..5a9be6c10 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -9,19 +9,21 @@ jobs: compute-matrix: id: compute-matrix runs-on: ubuntu-latest - shell: bash - run: | - # add more list items here to run nightlies for more branches - export CI_MATRIX=" - - branch: '25.10' - sha: "\'$(git ls-remote ${{ github.repositoryUrl }} refs/heads/branch-25.10 | awk '{print $1}')\'" - " - MATRIX="$( - yq -n -o json 'env(CI_MATRIX)' | \ - )" + steps: + - name: compute-matrix + shell: bash + run: | + # add more list items here to run nightlies for more branches + export CI_MATRIX=" + - branch: '25.10' + sha: "\'$(git ls-remote ${{ github.repositoryUrl }} refs/heads/branch-25.10 | awk '{print $1}')\'" + " + MATRIX="$( + yq -n -o json 'env(CI_MATRIX)' | \ + )" - echo "MATRIX=${MATRIX}" | tee --append "${GITHUB_OUTPUT}" - echo "date=$(date +%F)" | tee --append "${GITHUB_OUTPUT}" + echo "MATRIX=${MATRIX}" | tee --append "${GITHUB_OUTPUT}" + echo "date=$(date +%F)" | tee --append "${GITHUB_OUTPUT}" build: needs: [compute-matrix] strategy: From d99237f7802023bed6d9e63026cafbc99db2e1ec Mon Sep 17 00:00:00 2001 From: James Lamb Date: Thu, 28 Aug 2025 16:19:10 -0500 Subject: [PATCH 05/22] fix syntax --- .github/workflows/nightly.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 5a9be6c10..5854497f1 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -7,10 +7,9 @@ on: jobs: compute-matrix: - id: compute-matrix runs-on: ubuntu-latest steps: - - name: compute-matrix + - name: compute matrix shell: bash run: | # add more list items here to run nightlies for more branches From d61445ec866ff09de84f21243162f5116e43ef01 Mon Sep 17 00:00:00 2001 From: James Lamb Date: Thu, 28 Aug 2025 16:29:16 -0500 Subject: [PATCH 06/22] use github.repository instead of github.repositoryUrl --- .github/workflows/nightly.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 5854497f1..15273213d 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -15,10 +15,10 @@ jobs: # add more list items here to run nightlies for more branches export CI_MATRIX=" - branch: '25.10' - sha: "\'$(git ls-remote ${{ github.repositoryUrl }} refs/heads/branch-25.10 | awk '{print $1}')\'" + sha: "\'$(git ls-remote https://github.com/${{ github.repository }}.git refs/heads/branch-25.10 | awk '{print $1}')\'" " MATRIX="$( - yq -n -o json 'env(CI_MATRIX)' | \ + yq -n -o json 'env(CI_MATRIX)' )" echo "MATRIX=${MATRIX}" | tee --append "${GITHUB_OUTPUT}" From b100222a765b48c133dc957bb7a5eae19deb0826 Mon Sep 17 00:00:00 2001 From: James Lamb Date: Thu, 28 Aug 2025 17:09:35 -0500 Subject: [PATCH 07/22] more yq syntax --- .github/workflows/nightly.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 15273213d..4ca99fe95 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -18,7 +18,7 @@ jobs: sha: "\'$(git ls-remote https://github.com/${{ github.repository }}.git refs/heads/branch-25.10 | awk '{print $1}')\'" " MATRIX="$( - yq -n -o json 'env(CI_MATRIX)' + yq -n --indent 0 -o json 'env(CI_MATRIX)' )" echo "MATRIX=${MATRIX}" | tee --append "${GITHUB_OUTPUT}" From a7501f6bd8f2c5177d5a835d6b74d074a95f0a2f Mon Sep 17 00:00:00 2001 From: James Lamb Date: Thu, 28 Aug 2025 17:17:48 -0500 Subject: [PATCH 08/22] GHA syntax --- .github/workflows/nightly.yaml | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 4ca99fe95..2d3c7d7cc 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -8,8 +8,12 @@ on: jobs: compute-matrix: runs-on: ubuntu-latest + outputs: + DATE: ${{ steps.compute-matrix.outputs.DATE }} + MATRIX: ${{ steps.compute-matrix.outputs.MATRIX }} steps: - name: compute matrix + id: compute-matrix shell: bash run: | # add more list items here to run nightlies for more branches @@ -22,7 +26,7 @@ jobs: )" echo "MATRIX=${MATRIX}" | tee --append "${GITHUB_OUTPUT}" - echo "date=$(date +%F)" | tee --append "${GITHUB_OUTPUT}" + echo "DATE=$(date +%F)" | tee --append "${GITHUB_OUTPUT}" build: needs: [compute-matrix] strategy: @@ -32,7 +36,7 @@ jobs: with: build_type: nightly branch: ${{ matrix.branch }} - date: ${{ needs.compute-matrix.outputs.date }} + date: ${{ needs.compute-matrix.outputs.DATE }} sha: ${{ matrix.sha }} test: needs: [compute-matrix, build] @@ -43,5 +47,5 @@ jobs: with: build_type: nightly branch: ${{ matrix.branch }} - date: ${{ needs.compute-matrix.outputs.date }} + date: ${{ needs.compute-matrix.outputs.DATE }} sha: ${{ matrix.sha }} From 5897aa71f0e3f63eacca0bb1d85f0eb822bac5a4 Mon Sep 17 00:00:00 2001 From: James Lamb Date: Thu, 28 Aug 2025 17:22:28 -0500 Subject: [PATCH 09/22] hmmm --- .github/workflows/nightly.yaml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 2d3c7d7cc..0940cef9e 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -8,9 +8,6 @@ on: jobs: compute-matrix: runs-on: ubuntu-latest - outputs: - DATE: ${{ steps.compute-matrix.outputs.DATE }} - MATRIX: ${{ steps.compute-matrix.outputs.MATRIX }} steps: - name: compute matrix id: compute-matrix From f519b4b3fa2a6b0b24e6f44c33c2a83e51caf89d Mon Sep 17 00:00:00 2001 From: James Lamb Date: Thu, 28 Aug 2025 17:25:48 -0500 Subject: [PATCH 10/22] set outputs --- .github/workflows/nightly.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 0940cef9e..2d3c7d7cc 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -8,6 +8,9 @@ on: jobs: compute-matrix: runs-on: ubuntu-latest + outputs: + DATE: ${{ steps.compute-matrix.outputs.DATE }} + MATRIX: ${{ steps.compute-matrix.outputs.MATRIX }} steps: - name: compute matrix id: compute-matrix From d4f013bd1896e490cc0e38f0b4ce0729f91aa47e Mon Sep 17 00:00:00 2001 From: James Lamb Date: Thu, 28 Aug 2025 17:29:45 -0500 Subject: [PATCH 11/22] quoting? --- .github/workflows/nightly.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 2d3c7d7cc..e7042f5fb 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -25,7 +25,7 @@ jobs: yq -n --indent 0 -o json 'env(CI_MATRIX)' )" - echo "MATRIX=${MATRIX}" | tee --append "${GITHUB_OUTPUT}" + echo "MATRIX='${MATRIX}'" | tee --append "${GITHUB_OUTPUT}" echo "DATE=$(date +%F)" | tee --append "${GITHUB_OUTPUT}" build: needs: [compute-matrix] From e7565f3ea1272ddc372ad43812820fc9709501b3 Mon Sep 17 00:00:00 2001 From: James Lamb Date: Thu, 28 Aug 2025 17:34:13 -0500 Subject: [PATCH 12/22] ah, matrix needs to start with include --- .github/workflows/nightly.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index e7042f5fb..d7cf4de73 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -22,10 +22,11 @@ jobs: sha: "\'$(git ls-remote https://github.com/${{ github.repository }}.git refs/heads/branch-25.10 | awk '{print $1}')\'" " MATRIX="$( - yq -n --indent 0 -o json 'env(CI_MATRIX)' + yq -n --indent 0 -o json '{include: env(CI_MATRIX)}' \ + | jq -c '{include: .}' )" - echo "MATRIX='${MATRIX}'" | tee --append "${GITHUB_OUTPUT}" + echo "MATRIX=${MATRIX}" | tee --append "${GITHUB_OUTPUT}" echo "DATE=$(date +%F)" | tee --append "${GITHUB_OUTPUT}" build: needs: [compute-matrix] From e4f8525e0b682e928be3cd570f8adec7e2e6bcfe Mon Sep 17 00:00:00 2001 From: James Lamb Date: Thu, 28 Aug 2025 17:35:11 -0500 Subject: [PATCH 13/22] ugh --- .github/workflows/nightly.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index d7cf4de73..bfee3ac8d 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -22,7 +22,7 @@ jobs: sha: "\'$(git ls-remote https://github.com/${{ github.repository }}.git refs/heads/branch-25.10 | awk '{print $1}')\'" " MATRIX="$( - yq -n --indent 0 -o json '{include: env(CI_MATRIX)}' \ + yq -n --indent 0 -o json 'env(CI_MATRIX)' \ | jq -c '{include: .}' )" From 001731ffd1acdb0bda84636fe12447d9e784cff0 Mon Sep 17 00:00:00 2001 From: James Lamb Date: Thu, 28 Aug 2025 18:18:25 -0500 Subject: [PATCH 14/22] fix workflow names, artifact search --- .github/workflows/build.yaml | 15 +++++++++++++++ .github/workflows/nightly.yaml | 10 ++++++++-- .github/workflows/test.yaml | 4 ++++ 3 files changed, 27 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 1875234bc..119855784 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -68,6 +68,7 @@ concurrency: jobs: cpp-build: + name: cpp-build secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@branch-25.10 with: @@ -77,6 +78,7 @@ jobs: sha: ${{ inputs.sha }} script: ci/build_cpp.sh python-build: + name: python-build needs: [cpp-build] secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/conda-python-build.yaml@branch-25.10 @@ -87,6 +89,7 @@ jobs: sha: ${{ inputs.sha }} script: ci/build_python.sh upload-conda: + name: upload-conda needs: [cpp-build, python-build] secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/conda-upload-packages.yaml@branch-25.10 @@ -96,6 +99,7 @@ jobs: date: ${{ inputs.date }} sha: ${{ inputs.sha }} wheel-build-cuopt-mps-parser: + name: wheel-build-cuopt-mps-parser secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.10 with: @@ -108,6 +112,7 @@ jobs: package-type: python append-cuda-suffix: false wheel-publish-cuopt-mps-parser: + name: wheel-publish-cuopt-mps-parser needs: wheel-build-cuopt-mps-parser secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@branch-25.10 @@ -119,6 +124,7 @@ jobs: package-name: cuopt_mps_parser package-type: python wheel-build-libcuopt: + name: wheel-build-libcuopt needs: wheel-build-cuopt-mps-parser secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.10 @@ -132,6 +138,7 @@ jobs: package-type: cpp matrix_filter: group_by([.ARCH, (.CUDA_VER|split(".")|map(tonumber)|.[0])]) | map(max_by(.PY_VER|split(".")|map(tonumber))) wheel-publish-libcuopt: + name: wheel-publish-libcuopt needs: wheel-build-libcuopt secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@branch-25.10 @@ -143,6 +150,7 @@ jobs: package-name: libcuopt package-type: cpp wheel-build-cuopt: + name: wheel-build-cuopt needs: [wheel-build-cuopt-mps-parser, wheel-build-libcuopt] secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.10 @@ -155,6 +163,7 @@ jobs: package-name: cuopt package-type: python wheel-publish-cuopt: + name: wheel-publish-cuopt needs: wheel-build-cuopt secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@branch-25.10 @@ -166,6 +175,7 @@ jobs: package-name: cuopt package-type: python wheel-build-cuopt-server: + name: wheel-build-cuopt-server needs: wheel-build-cuopt secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.10 @@ -178,6 +188,7 @@ jobs: package-name: cuopt_server package-type: python wheel-publish-cuopt-server: + name: wheel-publish-cuopt-server needs: wheel-build-cuopt-server secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@branch-25.10 @@ -189,6 +200,7 @@ jobs: package-name: cuopt_server package-type: python docs-build: + name: docs-build needs: [python-build] secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@branch-25.10 @@ -204,6 +216,7 @@ jobs: container_image: "rapidsai/ci-conda:25.10-latest" script: "ci/build_docs.sh" wheel-build-cuopt-sh-client: + name: wheel-build-cuopt-sh-client needs: wheel-build-cuopt secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.10 @@ -217,6 +230,7 @@ jobs: package-type: python append-cuda-suffix: false wheel-publish-cuopt-sh-client: + name: wheel-publish-cuopt-sh-client needs: wheel-build-cuopt-sh-client secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@branch-25.10 @@ -228,6 +242,7 @@ jobs: package-name: cuopt_sh_client package-type: python build-images: + name: build-images needs: [wheel-publish-cuopt, wheel-publish-cuopt-server] uses: ./.github/workflows/build_test_publish_images.yaml secrets: inherit diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index bfee3ac8d..a90b75a3d 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -33,9 +33,12 @@ jobs: strategy: fail-fast: false matrix: ${{ fromJSON(needs.compute-matrix.outputs.MATRIX) }} + name: build (${{ matrix.branch }}) uses: ./.github/workflows/build.yaml with: - build_type: nightly + # Because build and test happen in the same workflow run, build_type="branch" is preferred here. + # That tells artifact-downloading code to just look for artifacts from this same run. + build_type: branch branch: ${{ matrix.branch }} date: ${{ needs.compute-matrix.outputs.DATE }} sha: ${{ matrix.sha }} @@ -44,9 +47,12 @@ jobs: strategy: fail-fast: false matrix: ${{ fromJSON(needs.compute-matrix.outputs.MATRIX) }} + name: test (${{ matrix.branch }}) uses: ./.github/workflows/test.yaml with: - build_type: nightly + # Because build and test happen in the same workflow run, build_type="branch" is preferred here. + # That tells artifact-downloading code to just look for artifacts from this same run. + build_type: branch branch: ${{ matrix.branch }} date: ${{ needs.compute-matrix.outputs.DATE }} sha: ${{ matrix.sha }} diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index df35a256d..34433ad7e 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -59,6 +59,7 @@ on: jobs: conda-cpp-tests: + name: conda-cpp-tests secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-tests.yaml@branch-25.10 with: @@ -68,6 +69,7 @@ jobs: sha: ${{ inputs.sha }} script: ci/test_cpp.sh conda-python-tests: + name: conda-python-tests secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/conda-python-tests.yaml@branch-25.10 with: @@ -78,6 +80,7 @@ jobs: sha: ${{ inputs.sha }} script: ci/test_python.sh wheel-tests-cuopt: + name: wheel-tests-cuopt secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@branch-25.10 with: @@ -87,6 +90,7 @@ jobs: sha: ${{ inputs.sha }} script: ci/test_wheel_cuopt.sh wheel-tests-cuopt-server: + name: wheel-tests-cuopt-server secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@branch-25.10 with: From 07d4acc68c0a2676f845b07bb0dbc0e044f26c9d Mon Sep 17 00:00:00 2001 From: James Lamb Date: Thu, 28 Aug 2025 19:45:16 -0500 Subject: [PATCH 15/22] fix branch --- .github/workflows/nightly.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index a90b75a3d..0d37caf6e 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -18,7 +18,7 @@ jobs: run: | # add more list items here to run nightlies for more branches export CI_MATRIX=" - - branch: '25.10' + - branch: 'branch-25.10' sha: "\'$(git ls-remote https://github.com/${{ github.repository }}.git refs/heads/branch-25.10 | awk '{print $1}')\'" " MATRIX="$( @@ -29,11 +29,11 @@ jobs: echo "MATRIX=${MATRIX}" | tee --append "${GITHUB_OUTPUT}" echo "DATE=$(date +%F)" | tee --append "${GITHUB_OUTPUT}" build: + name: build (${{ matrix.branch }}) needs: [compute-matrix] strategy: fail-fast: false matrix: ${{ fromJSON(needs.compute-matrix.outputs.MATRIX) }} - name: build (${{ matrix.branch }}) uses: ./.github/workflows/build.yaml with: # Because build and test happen in the same workflow run, build_type="branch" is preferred here. @@ -43,11 +43,11 @@ jobs: date: ${{ needs.compute-matrix.outputs.DATE }} sha: ${{ matrix.sha }} test: + name: test (${{ matrix.branch }}) needs: [compute-matrix, build] strategy: fail-fast: false matrix: ${{ fromJSON(needs.compute-matrix.outputs.MATRIX) }} - name: test (${{ matrix.branch }}) uses: ./.github/workflows/test.yaml with: # Because build and test happen in the same workflow run, build_type="branch" is preferred here. From a4f85037aae3e16f2e2aa4693088bf6662ddd77d Mon Sep 17 00:00:00 2001 From: James Lamb Date: Thu, 28 Aug 2025 22:06:13 -0500 Subject: [PATCH 16/22] fix secrets --- .github/workflows/nightly.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 0d37caf6e..ac1323507 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -31,6 +31,7 @@ jobs: build: name: build (${{ matrix.branch }}) needs: [compute-matrix] + secrets: inherit strategy: fail-fast: false matrix: ${{ fromJSON(needs.compute-matrix.outputs.MATRIX) }} @@ -45,6 +46,7 @@ jobs: test: name: test (${{ matrix.branch }}) needs: [compute-matrix, build] + secrets: inherit strategy: fail-fast: false matrix: ${{ fromJSON(needs.compute-matrix.outputs.MATRIX) }} From 93b5ea1cf27147b9dac89adafd19ea91dc097593 Mon Sep 17 00:00:00 2001 From: James Lamb Date: Thu, 28 Aug 2025 23:02:39 -0500 Subject: [PATCH 17/22] check out correct SHA --- .github/workflows/build_test_publish_images.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build_test_publish_images.yaml b/.github/workflows/build_test_publish_images.yaml index af066e41e..e71809d40 100644 --- a/.github/workflows/build_test_publish_images.yaml +++ b/.github/workflows/build_test_publish_images.yaml @@ -77,6 +77,7 @@ jobs: - name: Checkout uses: actions/checkout@v4 with: + ref: ${{ inputs.sha }} fetch-depth: 0 # unshallow fetch for setuptools-scm persist-credentials: false From 6dd7d7cdb650761956cec263871698834ff39095 Mon Sep 17 00:00:00 2001 From: James Lamb Date: Mon, 22 Sep 2025 09:40:08 -0500 Subject: [PATCH 18/22] remove duplicate 'ref' setting --- .github/workflows/build_test_publish_images.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/build_test_publish_images.yaml b/.github/workflows/build_test_publish_images.yaml index 900b5c8c0..5f107cc57 100644 --- a/.github/workflows/build_test_publish_images.yaml +++ b/.github/workflows/build_test_publish_images.yaml @@ -77,7 +77,6 @@ jobs: - name: Checkout uses: actions/checkout@v4 with: - ref: ${{ inputs.sha }} fetch-depth: 0 # unshallow fetch for setuptools-scm persist-credentials: false ref: ${{ inputs.sha }} From 3fefd87094d4197052617964095a9daf733f1724 Mon Sep 17 00:00:00 2001 From: James Lamb Date: Mon, 22 Sep 2025 10:14:01 -0500 Subject: [PATCH 19/22] use my shared-workflows fork --- .github/workflows/build.yaml | 28 ++++++++--------- .github/workflows/pr.yaml | 30 +++++++++---------- .github/workflows/test.yaml | 10 +++---- .../trigger-breaking-change-alert.yaml | 2 +- 4 files changed, 35 insertions(+), 35 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 1678fdae8..429db85d6 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -70,7 +70,7 @@ jobs: cpp-build: name: cpp-build secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/conda-cpp-build.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -81,7 +81,7 @@ jobs: name: python-build needs: [cpp-build] secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-python-build.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/conda-python-build.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -92,7 +92,7 @@ jobs: name: upload-conda needs: [cpp-build, python-build] secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-upload-packages.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/conda-upload-packages.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -101,7 +101,7 @@ jobs: wheel-build-cuopt-mps-parser: name: wheel-build-cuopt-mps-parser secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -117,7 +117,7 @@ jobs: name: wheel-publish-cuopt-mps-parser needs: wheel-build-cuopt-mps-parser secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-publish.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -129,7 +129,7 @@ jobs: name: wheel-build-libcuopt needs: wheel-build-cuopt-mps-parser secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -143,7 +143,7 @@ jobs: name: wheel-publish-libcuopt needs: wheel-build-libcuopt secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-publish.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -155,7 +155,7 @@ jobs: name: wheel-build-cuopt needs: [wheel-build-cuopt-mps-parser, wheel-build-libcuopt] secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -168,7 +168,7 @@ jobs: name: wheel-publish-cuopt needs: wheel-build-cuopt secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-publish.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -180,7 +180,7 @@ jobs: name: wheel-build-cuopt-server needs: wheel-build-cuopt secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -193,7 +193,7 @@ jobs: name: wheel-publish-cuopt-server needs: wheel-build-cuopt-server secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-publish.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -205,7 +205,7 @@ jobs: name: docs-build needs: [python-build] secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/custom-job.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} node_type: "gpu-l4-latest-1" @@ -221,7 +221,7 @@ jobs: name: wheel-build-cuopt-sh-client needs: wheel-build-cuopt secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -237,7 +237,7 @@ jobs: name: wheel-publish-cuopt-sh-client needs: wheel-build-cuopt-sh-client secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-publish.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index 51203186f..947a4c58d 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -43,10 +43,10 @@ jobs: - wheel-build-cuopt-sh-client - test-self-hosted-server secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/pr-builder.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/pr-builder.yaml@cuopt-testing changed-files: secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/changed-files.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/changed-files.yaml@cuopt-testing with: files_yaml: | test_cpp: @@ -111,21 +111,21 @@ jobs: - '!python/nvcf_client/**' checks: secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/checks.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/checks.yaml@cuopt-testing with: enable_check_generated_files: false conda-cpp-build: needs: checks secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/conda-cpp-build.yaml@cuopt-testing with: build_type: pull-request script: ci/build_cpp.sh conda-cpp-tests: needs: [conda-cpp-build, changed-files] secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-tests.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/conda-cpp-tests.yaml@cuopt-testing #if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_cpp with: build_type: pull-request @@ -133,14 +133,14 @@ jobs: conda-python-build: needs: conda-cpp-build secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-python-build.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/conda-python-build.yaml@cuopt-testing with: build_type: pull-request script: ci/build_python.sh conda-python-tests: needs: [conda-python-build, changed-files] secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-python-tests.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/conda-python-tests.yaml@cuopt-testing #if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python with: run_codecov: false @@ -149,7 +149,7 @@ jobs: docs-build: needs: conda-python-build secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/custom-job.yaml@cuopt-testing with: build_type: pull-request node_type: "gpu-l4-latest-1" @@ -160,7 +160,7 @@ jobs: script: "ci/build_docs.sh" wheel-build-cuopt-mps-parser: secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: pull-request script: ci/build_wheel_cuopt_mps_parser.sh @@ -172,7 +172,7 @@ jobs: wheel-build-libcuopt: needs: wheel-build-cuopt-mps-parser secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: # build for every combination of arch and CUDA version, but only for the latest Python matrix_filter: group_by([.ARCH, (.CUDA_VER|split(".")|map(tonumber)|.[0])]) | map(max_by(.PY_VER|split(".")|map(tonumber))) @@ -183,7 +183,7 @@ jobs: wheel-build-cuopt: needs: [wheel-build-cuopt-mps-parser, wheel-build-libcuopt] secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: pull-request script: ci/build_wheel_cuopt.sh @@ -192,7 +192,7 @@ jobs: wheel-tests-cuopt: needs: [wheel-build-cuopt, wheel-build-cuopt-mps-parser, wheel-build-cuopt-sh-client, changed-files] secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-test.yaml@cuopt-testing #if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python_cuopt with: build_type: pull-request @@ -200,7 +200,7 @@ jobs: wheel-build-cuopt-server: needs: wheel-build-cuopt secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: pull-request script: ci/build_wheel_cuopt_server.sh @@ -208,7 +208,7 @@ jobs: package-type: python wheel-build-cuopt-sh-client: secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: pull-request script: ci/build_wheel_cuopt_sh_client.sh @@ -221,7 +221,7 @@ jobs: wheel-tests-cuopt-server: needs: [wheel-build-cuopt-server, changed-files] secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-test.yaml@cuopt-testing #if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python_cuopt_server with: build_type: pull-request diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 93bbe4675..43f8f9814 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -61,7 +61,7 @@ jobs: conda-cpp-tests: name: conda-cpp-tests secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-tests.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/conda-cpp-tests.yaml@cuopt-testing with: build_type: ${{ inputs.build_type }} branch: ${{ inputs.branch }} @@ -71,7 +71,7 @@ jobs: conda-python-tests: name: conda-python-tests secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-python-tests.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/conda-python-tests.yaml@cuopt-testing with: run_codecov: false build_type: ${{ inputs.build_type }} @@ -82,7 +82,7 @@ jobs: wheel-tests-cuopt: name: wheel-tests-cuopt secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-test.yaml@cuopt-testing with: build_type: ${{ inputs.build_type }} branch: ${{ inputs.branch }} @@ -92,7 +92,7 @@ jobs: wheel-tests-cuopt-server: name: wheel-tests-cuopt-server secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/wheels-test.yaml@cuopt-testing with: build_type: ${{ inputs.build_type }} branch: ${{ inputs.branch }} @@ -101,7 +101,7 @@ jobs: script: ci/test_wheel_cuopt_server.sh conda-notebook-tests: secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/custom-job.yaml@cuopt-testing with: build_type: ${{ inputs.build_type }} branch: ${{ inputs.branch }} diff --git a/.github/workflows/trigger-breaking-change-alert.yaml b/.github/workflows/trigger-breaking-change-alert.yaml index 1317f4a8f..ae08b49b3 100644 --- a/.github/workflows/trigger-breaking-change-alert.yaml +++ b/.github/workflows/trigger-breaking-change-alert.yaml @@ -27,7 +27,7 @@ jobs: trigger-notifier: if: contains(github.event.pull_request.labels.*.name, 'breaking') secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/breaking-change-alert.yaml@branch-25.10 + uses: jameslamb/shared-workflows/.github/workflows/breaking-change-alert.yaml@cuopt-testing with: sender_login: ${{ github.event.sender.login }} sender_avatar: ${{ github.event.sender.avatar_url }} From f37e65a5c2a243faa0b4aad72b503077c2bb7500 Mon Sep 17 00:00:00 2001 From: James Lamb Date: Mon, 22 Sep 2025 10:15:56 -0500 Subject: [PATCH 20/22] cannot source workflows from my fork --- .github/workflows/build.yaml | 28 ++++++++--------- .github/workflows/pr.yaml | 30 +++++++++---------- .github/workflows/test.yaml | 10 +++---- .../trigger-breaking-change-alert.yaml | 2 +- 4 files changed, 35 insertions(+), 35 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 429db85d6..80a699271 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -70,7 +70,7 @@ jobs: cpp-build: name: cpp-build secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/conda-cpp-build.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -81,7 +81,7 @@ jobs: name: python-build needs: [cpp-build] secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/conda-python-build.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/conda-python-build.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -92,7 +92,7 @@ jobs: name: upload-conda needs: [cpp-build, python-build] secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/conda-upload-packages.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/conda-upload-packages.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -101,7 +101,7 @@ jobs: wheel-build-cuopt-mps-parser: name: wheel-build-cuopt-mps-parser secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -117,7 +117,7 @@ jobs: name: wheel-publish-cuopt-mps-parser needs: wheel-build-cuopt-mps-parser secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-publish.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -129,7 +129,7 @@ jobs: name: wheel-build-libcuopt needs: wheel-build-cuopt-mps-parser secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -143,7 +143,7 @@ jobs: name: wheel-publish-libcuopt needs: wheel-build-libcuopt secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-publish.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -155,7 +155,7 @@ jobs: name: wheel-build-cuopt needs: [wheel-build-cuopt-mps-parser, wheel-build-libcuopt] secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -168,7 +168,7 @@ jobs: name: wheel-publish-cuopt needs: wheel-build-cuopt secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-publish.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -180,7 +180,7 @@ jobs: name: wheel-build-cuopt-server needs: wheel-build-cuopt secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -193,7 +193,7 @@ jobs: name: wheel-publish-cuopt-server needs: wheel-build-cuopt-server secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-publish.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -205,7 +205,7 @@ jobs: name: docs-build needs: [python-build] secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/custom-job.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} node_type: "gpu-l4-latest-1" @@ -221,7 +221,7 @@ jobs: name: wheel-build-cuopt-sh-client needs: wheel-build-cuopt secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -237,7 +237,7 @@ jobs: name: wheel-publish-cuopt-sh-client needs: wheel-build-cuopt-sh-client secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-publish.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@cuopt-testing with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index 947a4c58d..b4a5e178e 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -43,10 +43,10 @@ jobs: - wheel-build-cuopt-sh-client - test-self-hosted-server secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/pr-builder.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/pr-builder.yaml@cuopt-testing changed-files: secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/changed-files.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/changed-files.yaml@cuopt-testing with: files_yaml: | test_cpp: @@ -111,21 +111,21 @@ jobs: - '!python/nvcf_client/**' checks: secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/checks.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/checks.yaml@cuopt-testing with: enable_check_generated_files: false conda-cpp-build: needs: checks secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/conda-cpp-build.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@cuopt-testing with: build_type: pull-request script: ci/build_cpp.sh conda-cpp-tests: needs: [conda-cpp-build, changed-files] secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/conda-cpp-tests.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-tests.yaml@cuopt-testing #if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_cpp with: build_type: pull-request @@ -133,14 +133,14 @@ jobs: conda-python-build: needs: conda-cpp-build secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/conda-python-build.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/conda-python-build.yaml@cuopt-testing with: build_type: pull-request script: ci/build_python.sh conda-python-tests: needs: [conda-python-build, changed-files] secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/conda-python-tests.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/conda-python-tests.yaml@cuopt-testing #if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python with: run_codecov: false @@ -149,7 +149,7 @@ jobs: docs-build: needs: conda-python-build secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/custom-job.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@cuopt-testing with: build_type: pull-request node_type: "gpu-l4-latest-1" @@ -160,7 +160,7 @@ jobs: script: "ci/build_docs.sh" wheel-build-cuopt-mps-parser: secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: pull-request script: ci/build_wheel_cuopt_mps_parser.sh @@ -172,7 +172,7 @@ jobs: wheel-build-libcuopt: needs: wheel-build-cuopt-mps-parser secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: # build for every combination of arch and CUDA version, but only for the latest Python matrix_filter: group_by([.ARCH, (.CUDA_VER|split(".")|map(tonumber)|.[0])]) | map(max_by(.PY_VER|split(".")|map(tonumber))) @@ -183,7 +183,7 @@ jobs: wheel-build-cuopt: needs: [wheel-build-cuopt-mps-parser, wheel-build-libcuopt] secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: pull-request script: ci/build_wheel_cuopt.sh @@ -192,7 +192,7 @@ jobs: wheel-tests-cuopt: needs: [wheel-build-cuopt, wheel-build-cuopt-mps-parser, wheel-build-cuopt-sh-client, changed-files] secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-test.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@cuopt-testing #if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python_cuopt with: build_type: pull-request @@ -200,7 +200,7 @@ jobs: wheel-build-cuopt-server: needs: wheel-build-cuopt secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: pull-request script: ci/build_wheel_cuopt_server.sh @@ -208,7 +208,7 @@ jobs: package-type: python wheel-build-cuopt-sh-client: secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@cuopt-testing with: build_type: pull-request script: ci/build_wheel_cuopt_sh_client.sh @@ -221,7 +221,7 @@ jobs: wheel-tests-cuopt-server: needs: [wheel-build-cuopt-server, changed-files] secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-test.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@cuopt-testing #if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_python_cuopt_server with: build_type: pull-request diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 43f8f9814..55d26f37c 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -61,7 +61,7 @@ jobs: conda-cpp-tests: name: conda-cpp-tests secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/conda-cpp-tests.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-tests.yaml@cuopt-testing with: build_type: ${{ inputs.build_type }} branch: ${{ inputs.branch }} @@ -71,7 +71,7 @@ jobs: conda-python-tests: name: conda-python-tests secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/conda-python-tests.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/conda-python-tests.yaml@cuopt-testing with: run_codecov: false build_type: ${{ inputs.build_type }} @@ -82,7 +82,7 @@ jobs: wheel-tests-cuopt: name: wheel-tests-cuopt secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-test.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@cuopt-testing with: build_type: ${{ inputs.build_type }} branch: ${{ inputs.branch }} @@ -92,7 +92,7 @@ jobs: wheel-tests-cuopt-server: name: wheel-tests-cuopt-server secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/wheels-test.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@cuopt-testing with: build_type: ${{ inputs.build_type }} branch: ${{ inputs.branch }} @@ -101,7 +101,7 @@ jobs: script: ci/test_wheel_cuopt_server.sh conda-notebook-tests: secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/custom-job.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@cuopt-testing with: build_type: ${{ inputs.build_type }} branch: ${{ inputs.branch }} diff --git a/.github/workflows/trigger-breaking-change-alert.yaml b/.github/workflows/trigger-breaking-change-alert.yaml index ae08b49b3..49223fcf0 100644 --- a/.github/workflows/trigger-breaking-change-alert.yaml +++ b/.github/workflows/trigger-breaking-change-alert.yaml @@ -27,7 +27,7 @@ jobs: trigger-notifier: if: contains(github.event.pull_request.labels.*.name, 'breaking') secrets: inherit - uses: jameslamb/shared-workflows/.github/workflows/breaking-change-alert.yaml@cuopt-testing + uses: rapidsai/shared-workflows/.github/workflows/breaking-change-alert.yaml@cuopt-testing with: sender_login: ${{ github.event.sender.login }} sender_avatar: ${{ github.event.sender.avatar_url }} From d78b72497185ec76679c8cc615ffc03af4e3f430 Mon Sep 17 00:00:00 2001 From: James Lamb Date: Mon, 22 Sep 2025 10:32:12 -0500 Subject: [PATCH 21/22] try using input in name --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 80a699271..d031d0eeb 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -68,7 +68,7 @@ concurrency: jobs: cpp-build: - name: cpp-build + name: cpp-build (${{ inputs.branch }}) secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@cuopt-testing with: From 67502ccba94350df959be0174d8f2f73a85c4af1 Mon Sep 17 00:00:00 2001 From: James Lamb Date: Mon, 22 Sep 2025 11:50:51 -0500 Subject: [PATCH 22/22] more name changes, short-circuit image builds and tests --- .github/workflows/build.yaml | 2 +- .github/workflows/build_images.yaml | 35 ++++++++++--------- .../workflows/build_test_publish_images.yaml | 31 ++++++++-------- .github/workflows/test_images.yaml | 4 ++- 4 files changed, 39 insertions(+), 33 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index d031d0eeb..80a699271 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -68,7 +68,7 @@ concurrency: jobs: cpp-build: - name: cpp-build (${{ inputs.branch }}) + name: cpp-build secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@cuopt-testing with: diff --git a/.github/workflows/build_images.yaml b/.github/workflows/build_images.yaml index ee1bcbe4c..8c455ec59 100644 --- a/.github/workflows/build_images.yaml +++ b/.github/workflows/build_images.yaml @@ -50,6 +50,7 @@ jobs: PYTHON_VER: ["${{ inputs.PYTHON_VER }}"] LINUX_VER: ["${{ inputs.LINUX_VER }}"] fail-fast: false + name: ${{ matrix.CUDA_VER }}, ${{ matrix.PYTHON_VER }}, ${{ matrix.ARCH }}, ${{ matrix.LINUX_VER }} runs-on: "linux-${{ matrix.ARCH }}-cpu4" steps: - name: Checkout code repo @@ -90,21 +91,21 @@ jobs: run: | echo "CUDA_SHORT=$(echo '${{ inputs.CUDA_VER }}' | sed -E 's/([0-9]+\.[0-9]+)\.[0-9]+/\1/')" >> $GITHUB_OUTPUT echo "PYTHON_SHORT=$(echo '${{ inputs.PYTHON_VER }}' | sed -E 's/([0-9]+\.[0-9]+)\.[0-9]+/\1/')" >> $GITHUB_OUTPUT - - name: Build image and push to DockerHub and NGC - uses: docker/build-push-action@v6 - with: - context: ./ci/docker/context - file: ./ci/docker/Dockerfile - push: true - pull: true - build-args: | - CUDA_VER=${{ inputs.CUDA_VER }} - PYTHON_SHORT_VER=${{ steps.trim.outputs.PYTHON_SHORT }} - CUOPT_VER=${{ inputs.CUOPT_VER }} - LINUX_VER=${{ inputs.LINUX_VER }} - tags: nvidia/cuopt:${{ inputs.IMAGE_TAG_PREFIX }}-cuda${{ steps.trim.outputs.CUDA_SHORT }}-py${{ steps.trim.outputs.PYTHON_SHORT }}-${{ matrix.ARCH }} + # - name: Build image and push to DockerHub and NGC + # uses: docker/build-push-action@v6 + # with: + # context: ./ci/docker/context + # file: ./ci/docker/Dockerfile + # push: true + # pull: true + # build-args: | + # CUDA_VER=${{ inputs.CUDA_VER }} + # PYTHON_SHORT_VER=${{ steps.trim.outputs.PYTHON_SHORT }} + # CUOPT_VER=${{ inputs.CUOPT_VER }} + # LINUX_VER=${{ inputs.LINUX_VER }} + # tags: nvidia/cuopt:${{ inputs.IMAGE_TAG_PREFIX }}-cuda${{ steps.trim.outputs.CUDA_SHORT }}-py${{ steps.trim.outputs.PYTHON_SHORT }}-${{ matrix.ARCH }} - - name: Push image to NGC - run: | - docker tag nvidia/cuopt:${{ inputs.IMAGE_TAG_PREFIX }}-cuda${{ steps.trim.outputs.CUDA_SHORT }}-py${{ steps.trim.outputs.PYTHON_SHORT }}-${{ matrix.ARCH }} nvcr.io/nvstaging/nvaie/cuopt:${{ inputs.IMAGE_TAG_PREFIX }}-cuda${{ steps.trim.outputs.CUDA_SHORT }}-py${{ steps.trim.outputs.PYTHON_SHORT }}-${{ matrix.ARCH }} - docker push nvcr.io/nvstaging/nvaie/cuopt:${{ inputs.IMAGE_TAG_PREFIX }}-cuda${{ steps.trim.outputs.CUDA_SHORT }}-py${{ steps.trim.outputs.PYTHON_SHORT }}-${{ matrix.ARCH }} + # - name: Push image to NGC + # run: | + # docker tag nvidia/cuopt:${{ inputs.IMAGE_TAG_PREFIX }}-cuda${{ steps.trim.outputs.CUDA_SHORT }}-py${{ steps.trim.outputs.PYTHON_SHORT }}-${{ matrix.ARCH }} nvcr.io/nvstaging/nvaie/cuopt:${{ inputs.IMAGE_TAG_PREFIX }}-cuda${{ steps.trim.outputs.CUDA_SHORT }}-py${{ steps.trim.outputs.PYTHON_SHORT }}-${{ matrix.ARCH }} + # docker push nvcr.io/nvstaging/nvaie/cuopt:${{ inputs.IMAGE_TAG_PREFIX }}-cuda${{ steps.trim.outputs.CUDA_SHORT }}-py${{ steps.trim.outputs.PYTHON_SHORT }}-${{ matrix.ARCH }} diff --git a/.github/workflows/build_test_publish_images.yaml b/.github/workflows/build_test_publish_images.yaml index 5f107cc57..9568b8df7 100644 --- a/.github/workflows/build_test_publish_images.yaml +++ b/.github/workflows/build_test_publish_images.yaml @@ -65,6 +65,9 @@ permissions: jobs: compute-matrix: + # Setting 'name' here helps differentiate jobs in the GitHub UI, + # especially when this workflow is >=2 levels deep (e.g. called by a workflow called by another workflow). + name: build-test-publish-images (compute-matrix) runs-on: ubuntu-latest container: image: rapidsai/ci-conda:25.10-latest @@ -156,20 +159,20 @@ jobs: registry: "nvcr.io" username: "$oauthtoken" password: ${{ secrets.CUOPT_NGC_DOCKER_KEY }} - - name: Trim CUDA and Python versions - id: trim - run: | - echo "CUDA_SHORT=$(echo '${{ matrix.CUDA_VER }}' | sed -E 's/([0-9]+\.[0-9]+)\.[0-9]+/\1/')" >> $GITHUB_OUTPUT - echo "PYTHON_SHORT=$(echo '${{ matrix.PYTHON_VER }}' | sed -E 's/([0-9]+\.[0-9]+)\.[0-9]+/\1/')" >> $GITHUB_OUTPUT - - name: Create multiarch manifest - shell: bash - env: - CUOPT_VER: ${{ needs.compute-matrix.outputs.CUOPT_VER }} - CUDA_SHORT: ${{ steps.trim.outputs.CUDA_SHORT }} - PYTHON_SHORT: ${{ steps.trim.outputs.PYTHON_SHORT }} - IMAGE_TAG_PREFIX: ${{ needs.compute-matrix.outputs.IMAGE_TAG_PREFIX }} - BUILD_TYPE: ${{ inputs.build_type }} - run: bash ci/docker/create_multiarch_manifest.sh + # - name: Trim CUDA and Python versions + # id: trim + # run: | + # echo "CUDA_SHORT=$(echo '${{ matrix.CUDA_VER }}' | sed -E 's/([0-9]+\.[0-9]+)\.[0-9]+/\1/')" >> $GITHUB_OUTPUT + # echo "PYTHON_SHORT=$(echo '${{ matrix.PYTHON_VER }}' | sed -E 's/([0-9]+\.[0-9]+)\.[0-9]+/\1/')" >> $GITHUB_OUTPUT + # - name: Create multiarch manifest + # shell: bash + # env: + # CUOPT_VER: ${{ needs.compute-matrix.outputs.CUOPT_VER }} + # CUDA_SHORT: ${{ steps.trim.outputs.CUDA_SHORT }} + # PYTHON_SHORT: ${{ steps.trim.outputs.PYTHON_SHORT }} + # IMAGE_TAG_PREFIX: ${{ needs.compute-matrix.outputs.IMAGE_TAG_PREFIX }} + # BUILD_TYPE: ${{ inputs.build_type }} + # run: bash ci/docker/create_multiarch_manifest.sh test-images: name: Test images diff --git a/.github/workflows/test_images.yaml b/.github/workflows/test_images.yaml index bfeda82f6..fb5ebaf88 100644 --- a/.github/workflows/test_images.yaml +++ b/.github/workflows/test_images.yaml @@ -35,6 +35,7 @@ on: jobs: prepare: + name: test-images (prepare) runs-on: ubuntu-latest outputs: CUDA_SHORT: ${{ steps.trim.outputs.CUDA_SHORT }} @@ -50,6 +51,7 @@ jobs: echo "PYTHON_SHORT=$PYTHON_SHORT" >> $GITHUB_OUTPUT test: + name: test-images (${{ inputs.IMAGE_TAG_PREFIX }}-cuda${{ needs.prepare.outputs.CUDA_SHORT }}-py${{ needs.prepare.outputs.PYTHON_SHORT }}) runs-on: "linux-${{ inputs.ARCH }}-gpu-a100-latest-1" needs: prepare container: @@ -62,4 +64,4 @@ jobs: ref: ${{ inputs.sha }} - name: Test cuopt run: | - bash ./ci/docker/test_image.sh + exit 0