Skip to content

[DRAFT] [WIP] Path exploration for TT-NN x TT-Mesh Integration #4276

[DRAFT] [WIP] Path exploration for TT-NN x TT-Mesh Integration

[DRAFT] [WIP] Path exploration for TT-NN x TT-Mesh Integration #4276

Workflow file for this run

name: PR Gate
# This pipeline is the minimum bar a PR must pass before it can be merged.
# It is intended to be fast and lightweight to trigger automatically on every
# change in every PR and provide quick feedback without overloading the CI.
# Requirements for all jobs in this workflow:
# - A new job must cancel a previously scheduled/running job.
# PRs only care about the latest commit and multiple pushes may happen in quick succession.
# - End-to-end (excluding wait times for runners) must be less than 5mins.
# This includes the cost of checking out the code, preparing a runner, etc.
# - Individual test cases must be less than 1s.
on:
workflow_dispatch:
pull_request:
types:
- opened
- reopened
- synchronize
- ready_for_review
concurrency:
# Use github.run_id on main branch (or any protected branch)
# This ensure that no runs get cancelled on main
# Use github.event.pull_request.number on pull requests, so it's unique per pull request
# and will cancel obsolete runs
# Use github.ref on other branches, so it's unique per branch
# Possibly PRs can also just use `github.ref`, but for now just copy/pasting from
# https://www.meziantou.net/how-to-cancel-github-workflows-when-pushing-new-commits-on-a-branch.htm
group: ${{ github.workflow }}-${{ github.ref_protected && github.run_id || github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
build:
if: github.event_name != 'pull_request' || !github.event.pull_request.draft
uses: ./.github/workflows/build-artifact.yaml
with:
version: "22.04"
smoke-tests:
needs: build
strategy:
fail-fast: false
matrix:
platform: [
"tt-beta-ubuntu-2204-n300-large-stable",
]
uses: ./.github/workflows/smoke.yaml
with:
docker-image: ${{ needs.build.outputs.ci-build-docker-image }}
package-artifact-name: ${{ needs.build.outputs.packages-artifact-name }}
runner: ${{ matrix.platform }}
# GitHub has so many design limitations it's not even funny.
# This job is purely so we can capture the essence of the workflow as a whole in our status checks.
workflow-status:
name: PR Gate Status
if: always() # Force this job to run so GH can 'see' it
needs: [build, smoke-tests]
runs-on: ubuntu-latest
steps:
- name: Check if all jobs passed
uses: tenstorrent/tt-metal/.github/actions/workflow-status@main
with:
required-jobs: "build"
optional-jobs: "smoke-tests"
env:
NEEDS_CONTEXT: '${{ toJSON(needs) }}'