diff --git a/.github/workflows/ci-dispatch-job.yml b/.github/workflows/ci-dispatch-job.yml index f7f3558db65..16ee905cbba 100644 --- a/.github/workflows/ci-dispatch-job.yml +++ b/.github/workflows/ci-dispatch-job.yml @@ -6,6 +6,12 @@ defaults: on: workflow_call: + outputs: + # To check for success of this job, evaluate the following outputs. If any are true, the job succeeded. + linux_success: + value: ${{ jobs.linux.outputs.success }} + windows_success: + value: ${{ jobs.windows.outputs.success }} inputs: dispatch: {type: string, required: true} name: {type: string, required: true} @@ -21,14 +27,15 @@ permissions: jobs: linux: name: ${{inputs.name}} + continue-on-error: ${{ ! startsWith(inputs.dispatch, 'linux') }} + outputs: + success: ${{ steps.done.outputs.SUCCESS }} permissions: id-token: write contents: read strategy: - fail-fast: false matrix: include: ${{ fromJSON(startsWith(inputs.dispatch, 'linux') && inputs.dummy_matrix || '[]') }} - continue-on-error: ${{ !startsWith(inputs.dispatch, 'linux') }} runs-on: ${{inputs.runner}} container: options: -u root @@ -72,9 +79,15 @@ jobs: echo " - Continuous Integration (CI) Overview: https://github.com/NVIDIA/cccl/blob/main/ci-overview.md" exit $exit_code fi + - name: Mark job as successful + id: done + run: echo "SUCCESS=true" | tee -a ${GITHUB_OUTPUT} windows: name: ${{inputs.name}} + continue-on-error: ${{ ! startsWith(inputs.dispatch, 'windows') }} + outputs: + success: ${{ steps.done.outputs.SUCCESS }} permissions: id-token: write contents: read @@ -82,7 +95,6 @@ jobs: fail-fast: false matrix: include: ${{ fromJSON(startsWith(inputs.dispatch, 'windows') && inputs.dummy_matrix || '[]') }} - continue-on-error: ${{ !startsWith(inputs.dispatch, 'windows') }} runs-on: ${{inputs.runner}} env: SCCACHE_BUCKET: rapids-sccache-devs @@ -116,3 +128,7 @@ jobs: git fetch --all; git checkout ${{github.ref_name}}; ${{inputs.command}}" + - name: Mark job as successful + id: done + shell: bash + run: echo "SUCCESS=true" | tee -a ${GITHUB_OUTPUT} diff --git a/.github/workflows/ci-dispatch-two-stage.yml b/.github/workflows/ci-dispatch-two-stage.yml index ae9a267390a..c4dd2aef76d 100644 --- a/.github/workflows/ci-dispatch-two-stage.yml +++ b/.github/workflows/ci-dispatch-two-stage.yml @@ -68,3 +68,4 @@ jobs: echo "Dispatch: ${{ matrix.dispatch }}" echo "Producers result: ${{ needs.producers.result }}" echo "Producers outputs: ${{ toJSON(needs.producers.outputs) }}" + echo "Producers outputs.*: ${{ toJSON(needs.producers.outputs.*) }}"