Files
derek.holloway 7502bf64a4
CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
Flatten subprojects into a single base monorepo
2026-09-02 16:34:47 -07:00

114 lines
3.7 KiB
YAML

name: CI - Linux
on:
workflow_call:
inputs:
artifact_group:
type: string
amdgpu_families:
type: string
build_variant_label:
type: string
build_variant_cmake_preset:
type: string
build_variant_suffix:
type: string
test_labels:
type: string
artifact_run_id:
type: string
test_runs_on:
type: string
benchmark_runs_on:
type: string
default: ""
expect_failure:
type: boolean
use_prebuilt_artifacts:
type: string
rocm_package_version:
type: string
test_type:
type: string
sanity_check_only_for_family:
type: boolean
permissions:
contents: read
jobs:
build_portable_linux_artifacts:
name: Build Artifacts
if: ${{ inputs.use_prebuilt_artifacts == 'false' }}
uses: ./.github/workflows/build_portable_linux_artifacts.yml
secrets: inherit
with:
artifact_group: ${{ inputs.artifact_group }}
package_version: ${{ inputs.rocm_package_version }}
amdgpu_families: ${{ inputs.amdgpu_families }}
build_variant_label: ${{ inputs.build_variant_label }}
build_variant_cmake_preset: ${{ inputs.build_variant_cmake_preset }}
build_variant_suffix: ${{ inputs.build_variant_suffix }}
expect_failure: ${{ inputs.expect_failure }}
test_type: ${{ inputs.test_type }}
permissions:
contents: read
id-token: write
# TODO: rework "artifact_run_id" and "use_prebuilt_artifacts" here?
# I don't want to copy/paste this condition and special case plumbing
# through multiple workflows. All the packaging and testing workflows need
# to know is what artifact run id to use. That could be the current
# (implicit) run id, or it could be an explicit run id.
# How about having the "build artifacts" job run as a passthrough?
test_linux_artifacts:
needs: [build_portable_linux_artifacts]
name: Test Artifacts
# If the dependent job failed/cancelled, this job will not be run
# The use_prebuilt_artifacts "or" statement ensures that tests will run if
# previous build step is run or skipped.concurrency.
# If we are expecting a build failure, do not run tests to save machine capacity
if: >-
${{
!failure() &&
!cancelled() &&
(
inputs.use_prebuilt_artifacts == 'false' ||
inputs.use_prebuilt_artifacts == 'true'
) &&
inputs.expect_failure == false
}}
uses: ./.github/workflows/test_artifacts.yml
with:
artifact_group: ${{ inputs.artifact_group }}
amdgpu_families: ${{ inputs.amdgpu_families }}
test_runs_on: ${{ inputs.test_runs_on }}
artifact_run_id: ${{ inputs.artifact_run_id }}
test_type: ${{ inputs.test_type }}
test_labels: ${{ inputs.test_labels }}
sanity_check_only_for_family: ${{ inputs.sanity_check_only_for_family == true }}
build_portable_linux_python_packages:
needs: [build_portable_linux_artifacts]
name: Build Python
# If the dependent job failed/cancelled, this job will not be run
# The use_prebuilt_artifacts "or" statement ensures that tests will run if
# previous build step is run or skipped.concurrency.
if: >-
${{
!failure() &&
!cancelled() &&
(
inputs.use_prebuilt_artifacts == 'false' ||
inputs.use_prebuilt_artifacts == 'true'
) &&
inputs.expect_failure == false
}}
uses: ./.github/workflows/build_portable_linux_python_packages.yml
with:
artifact_run_id: "${{ inputs.artifact_run_id != '' && inputs.artifact_run_id || github.run_id }}"
artifact_group: ${{ inputs.artifact_group }}
package_version: ${{ inputs.rocm_package_version }}