Skip to content

Commit

Permalink
Workflow to track client integration build (#318)
Browse files Browse the repository at this point in the history
### Issue
No tracking issue, but a follow up issue will be #321 
tt-lens is a private repo, so it is not trivial to add a build job such
as this one.

### Description
Adding a job, which won't be mandatory, which tries to build newest
tt-metal with the current umd (a branch from this PR if triggered on PR,
or main if on main).

The idea is that to see asap if something is going to break tt-metal
build, which seems to be happening often in the past period.

### List of the changes
- Add workflow for building tt-metal, but with the UMD from this branch

### Testing
CI on this branch passed.

### API Changes
There are no API changes in this PR.
  • Loading branch information
broskoTT authored Nov 21, 2024
1 parent 5e4f52a commit 90ea1ad
Showing 1 changed file with 56 additions and 0 deletions.
56 changes: 56 additions & 0 deletions .github/workflows/build-clients.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
name: Build clients on newest UMD

on:
workflow_dispatch:
inputs:
timeout:
required: true
description: 'The timeout for the job in minutes'
type: number
default: 30
pull_request:
branches: ["main"]
push:
branches: ["main"]

jobs:
build-tt-metal:
# Due to parsing bug, fromJSON is used to convert string to number.
# In pull_request or push events, the input context is not available, stating the default again here.
timeout-minutes: ${{ fromJSON(inputs.timeout || '30') }}
strategy:
fail-fast: false
matrix:
arch_name: [grayskull, wormhole_b0, blackhole]

name: Build tt-metal for ${{ matrix.arch_name }} with newest UMD
runs-on: ubuntu-20.04
container:
image: ghcr.io/tenstorrent/tt-metal/tt-metalium/ubuntu-20.04-amd64:latest
options: --user root

steps:
- name: Checkout client repo
uses: actions/checkout@v4
with:
# Clone under tt-metal directory
path: tt-metal
repository: tenstorrent/tt-metal
submodules: recursive
lfs: 'true'

- name: Checkout UMD
uses: actions/checkout@v4
with:
# Clone directly into tt-metal directory for umd
path: tt-metal/tt_metal/third_party/umd
submodules: recursive
lfs: 'true'

- name: Build tt-metal
run: |
cd tt-metal
export ARCH_NAME=${{ matrix.arch_name }}
export TT_METAL_HOME=$(pwd)
export PYTHONPATH=$(pwd)
./build_metal.sh

0 comments on commit 90ea1ad

Please sign in to comment.