Skip to content

Build dockers

Build dockers #6572

Workflow file for this run

# Run checks required for a PR to merge and verify if post-merge commit is valid.
# This workflow only call other workflows.
name: PR/push
on:
push:
branches-ignore:
- 'dependabot/**'
pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
permissions:
contents: read
packages: read
jobs:
CodeChecks:
uses: ./.github/workflows/reusable_checks.yml
DocsBuild:
uses: ./.github/workflows/reusable_docs_build.yml
# DetectChanges:
# runs-on: ubuntu-latest
# outputs:
# changed_files: ${{ steps.changed-files.outputs.all_changed_files }}
# steps:
# - name: Checkout code
# uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
# with:
# fetch-depth: 0
# - name: Get changed files
# id: changed-files
# uses: tj-actions/[email protected]
# - name: List all changed files
# env:
# ALL_CHANGED_FILES: ${{ steps.changed-files.outputs.all_changed_files }}
# run: |
# echo "Changed files: ${{ steps.changed-files.outputs.all_changed_files }}"
# BuildDockers:
# if: ${{ contains(join(needs.DetectChanges.outputs.changed_files, ' '), '.github/docker/') }}
# needs: [DetectChanges]
# permissions:
# contents: read
# packages: write
# secrets: inherit
# uses: ./.github/workflows/reusable_dockers_build.yml
FastBuild:
# if: always() && (needs.BuildDockers.result == 'skipped' || needs.BuildDockers.result == 'success')
needs: [CodeChecks, DocsBuild]
uses: ./.github/workflows/reusable_fast.yml
Build:
name: Basic builds
# if: always() && (needs.FastBuild.result == 'success')
needs: [FastBuild]
uses: ./.github/workflows/reusable_basic.yml
DevDax:
# if: always() && (needs.FastBuild.result == 'success')
needs: [FastBuild]
uses: ./.github/workflows/reusable_dax.yml
MultiNuma:
# if: always() && (needs.FastBuild.result == 'success')
needs: [FastBuild]
uses: ./.github/workflows/reusable_multi_numa.yml
L0:
# if: always() && (needs.Build.result == 'success')
needs: [Build]
uses: ./.github/workflows/reusable_gpu.yml
with:
provider: "LEVEL_ZERO"
runner: "L0"
shared_lib: "['ON']"
L0-BMG:
# if: always() && (needs.Build.result == 'success')
needs: [Build]
uses: ./.github/workflows/reusable_gpu.yml
with:
provider: "LEVEL_ZERO"
runner: "L0-BMG"
shared_lib: "['ON']"
os: "['Ubuntu']"
CUDA:
# if: always() && (needs.Build.result == 'success')
needs: [Build]
uses: ./.github/workflows/reusable_gpu.yml
with:
provider: "CUDA"
runner: "CUDA"
shared_lib: "['ON']"
Sanitizers:
# if: always() && (needs.FastBuild.result == 'success')
needs: [FastBuild]
uses: ./.github/workflows/reusable_sanitizers.yml
QEMU:
# if: always() && (needs.FastBuild.result == 'success')
needs: [FastBuild]
uses: ./.github/workflows/reusable_qemu.yml
with:
short_run: true
ProxyLib:
# if: always() && (needs.Build.result == 'success')
needs: [Build]
uses: ./.github/workflows/reusable_proxy_lib.yml
Valgrind:
# if: always() && (needs.Build.result == 'success')
needs: [Build]
uses: ./.github/workflows/reusable_valgrind.yml
Coverage:
# total coverage (on upstream only)
if: github.repository == 'oneapi-src/unified-memory-framework'
needs: [Build, DevDax, L0, CUDA, MultiNuma, QEMU, ProxyLib]
uses: ./.github/workflows/reusable_coverage.yml
secrets: inherit
with:
trigger: "${{github.event_name}}"
Coverage_partial:
# partial coverage (on forks)
# if: github.repository != 'oneapi-src/unified-memory-framework' && always() && (needs.Build.result == 'success')
if: github.repository != 'oneapi-src/unified-memory-framework'
needs: [Build, QEMU, ProxyLib]
uses: ./.github/workflows/reusable_coverage.yml
CodeQL:
# if: always() && (needs.Build.result == 'success')
needs: [Build]
permissions:
contents: read
security-events: write
uses: ./.github/workflows/reusable_codeql.yml
Trivy:
# if: always() && (needs.Build.result == 'success')
needs: [Build]
permissions:
contents: read
security-events: write
uses: ./.github/workflows/reusable_trivy.yml
Compatibility:
# if: always() && (needs.Build.result == 'success')
needs: [Build]
uses: ./.github/workflows/reusable_compatibility.yml
strategy:
matrix:
tag: ["v0.11.0-rc1"]
with:
tag: ${{matrix.tag}}