All post-commit tests (with retries) #25383
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "All post-commit tests" | |
on: | |
workflow_call: | |
inputs: | |
build-type: | |
required: false | |
default: Release | |
type: string | |
workflow_dispatch: | |
inputs: | |
build-type: | |
required: false | |
default: Release | |
type: choice | |
options: | |
- Release | |
- Debug | |
- RelWithDebInfo | |
- CI | |
with-retries: | |
default: false | |
type: boolean | |
description: "Re-run failed jobs (max 3)" | |
push: | |
branches: ["main"] | |
permissions: | |
actions: read | |
contents: write | |
pull-requests: write | |
pages: write | |
id-token: write | |
packages: write | |
run-name: All post-commit tests${{ (github.event_name == 'workflow_dispatch' && inputs.with-retries) && ' (with retries)' || ''}} | |
jobs: | |
static-checks: | |
uses: ./.github/workflows/all-static-checks.yaml | |
secrets: inherit | |
build-artifact: | |
uses: ./.github/workflows/build-artifact.yaml | |
secrets: inherit | |
with: | |
build-type: ${{ inputs.build-type || 'Release' }} | |
build-wheel: true | |
build-artifact-profiler: | |
uses: ./.github/workflows/build-artifact.yaml | |
with: | |
build-type: ${{ inputs.build-type || 'Release' }} | |
tracy: true | |
secrets: inherit | |
test-wheels: | |
needs: build-artifact | |
uses: ./.github/workflows/_test-wheels-impl.yaml | |
with: | |
from-precompiled: true | |
secrets: inherit | |
# Slow Dispatch Unit Tests | |
sd-unit-tests: | |
needs: build-artifact | |
secrets: inherit | |
strategy: | |
fail-fast: false | |
matrix: | |
test-group: [ | |
{ arch: grayskull, runner-label: E150 }, | |
{ arch: wormhole_b0, runner-label: N150 }, | |
{ arch: wormhole_b0, runner-label: N300 }, | |
] | |
uses: ./.github/workflows/build-and-unit-tests.yaml | |
with: | |
arch: ${{ matrix.test-group.arch }} | |
runner-label: ${{ matrix.test-group.runner-label }} | |
# Fast Dispatch Unit Tests | |
fast-dispatch-unit-tests: | |
needs: build-artifact | |
secrets: inherit | |
strategy: | |
fail-fast: false | |
matrix: | |
test-group: [ | |
{ arch: grayskull, runner-label: E150 }, | |
{ arch: wormhole_b0, runner-label: N150 }, | |
{ arch: wormhole_b0, runner-label: N300 }, | |
] | |
uses: ./.github/workflows/fast-dispatch-build-and-unit-tests.yaml | |
with: | |
os: ubuntu-20.04 | |
arch: ${{ matrix.test-group.arch }} | |
runner-label: ${{ matrix.test-group.runner-label }} | |
# TTNN FD Unit tests | |
ttnn-unit-tests: | |
needs: build-artifact | |
secrets: inherit | |
strategy: | |
fail-fast: false | |
matrix: | |
test-group: [ | |
{ arch: grayskull, runner-label: E150 }, | |
{ arch: wormhole_b0, runner-label: N150 }, | |
{ arch: wormhole_b0, runner-label: N300 }, | |
] | |
uses: ./.github/workflows/ttnn-post-commit.yaml | |
with: | |
arch: ${{ matrix.test-group.arch }} | |
runner-label: ${{ matrix.test-group.runner-label }} | |
# FD Model Tests | |
models-unit-tests: | |
needs: build-artifact | |
secrets: inherit | |
strategy: | |
fail-fast: false | |
matrix: | |
test-group: [ | |
{ arch: grayskull, runner-label: E150 }, | |
{ arch: wormhole_b0, runner-label: N150 }, | |
{ arch: wormhole_b0, runner-label: N300 }, | |
] | |
uses: ./.github/workflows/models-post-commit.yaml | |
with: | |
arch: ${{ matrix.test-group.arch }} | |
runner-label: ${{ matrix.test-group.runner-label }} | |
# FD C++ Unit Tests | |
cpp-unit-tests: | |
needs: build-artifact | |
secrets: inherit | |
strategy: | |
fail-fast: false | |
matrix: | |
test-group: [ | |
{ arch: grayskull, runner-label: E150 }, | |
{ arch: wormhole_b0, runner-label: N150 }, | |
{ arch: wormhole_b0, runner-label: N300 }, | |
] | |
uses: ./.github/workflows/cpp-post-commit.yaml | |
with: | |
arch: ${{ matrix.test-group.arch }} | |
runner-label: ${{ matrix.test-group.runner-label }} | |
code-analysis: | |
uses: ./.github/workflows/code-analysis.yaml | |
secrets: inherit | |
with: | |
version: 22.04 | |
tt-train-cpp-unit-tests: | |
needs: build-artifact | |
secrets: inherit | |
strategy: | |
fail-fast: false | |
matrix: | |
test-group: [ | |
{ arch: wormhole_b0, runner-label: N150 }, | |
# Disabled due to https://github.com/tenstorrent/tt-metal/issues/16012 | |
# { arch: wormhole_b0, runner-label: N300 }, | |
] | |
uses: ./.github/workflows/tt-train-post-commit.yaml | |
with: | |
arch: ${{ matrix.test-group.arch }} | |
runner-label: ${{ matrix.test-group.runner-label }} | |
run-profiler-regression: | |
needs: build-artifact-profiler | |
strategy: | |
fail-fast: false | |
matrix: | |
test-group: [ | |
{ arch: grayskull, runner-label: E150 }, | |
{ arch: wormhole_b0, runner-label: N150 }, | |
{ arch: wormhole_b0, runner-label: N300 }, | |
] | |
uses: ./.github/workflows/run-profiler-regression.yaml | |
secrets: inherit | |
with: | |
arch: ${{ matrix.test-group.arch}} | |
runner-label: ${{ matrix.test-group.runner-label}} | |
build-docs: | |
needs: build-artifact | |
uses: ./.github/workflows/docs-latest-public.yaml | |
secrets: inherit | |
build: | |
uses: ./.github/workflows/build-artifact.yaml | |
needs: build-artifact | |
secrets: inherit | |
strategy: | |
matrix: | |
config: | |
- version: "20.04" | |
toolchain: "cmake/x86_64-linux-clang-17-libcpp-toolchain.cmake" | |
build-type: "Debug" | |
publish-artifact: false | |
- version: "20.04" | |
toolchain: "cmake/x86_64-linux-clang-17-libcpp-toolchain.cmake" | |
build-type: "RelWithDebInfo" | |
publish-artifact: false | |
- version: "22.04" | |
toolchain: "cmake/x86_64-linux-clang-17-libcpp-toolchain.cmake" | |
build-type: "Release" | |
publish-artifact: false | |
- version: "22.04" | |
toolchain: "cmake/x86_64-linux-clang-17-libstdcpp-toolchain.cmake" | |
build-type: "Release" | |
publish-artifact: false | |
skip-tt-train: true | |
- version: "22.04" | |
toolchain: "cmake/x86_64-linux-gcc-12-toolchain.cmake" | |
build-type: "Release" | |
publish-artifact: false | |
skip-tt-train: true | |
with: | |
version: ${{ matrix.config.version }} | |
toolchain: ${{ matrix.config.toolchain }} | |
build-type: ${{ matrix.config.build-type }} | |
publish-artifact: ${{ matrix.config.publish-artifact }} | |
skip-tt-train: ${{ matrix.config.skip-tt-train || false }} | |
# We used to use this for post-commit, but we didn't have enough runners | |
# to support the number of developers running this workflow | |
# build-and-test-measure-perf: | |
# build-and-test-measure-perf-device: |