Skip to content

feat: add nvfp4 gemm #456

feat: add nvfp4 gemm

feat: add nvfp4 gemm #456

name: Build PR (Dispatch)
on:
pull_request:
paths-ignore:
- "**/README.md"
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
permissions:
actions: write
statuses: write
jobs:
# Resolve the kernel from the PR title and fan out to per-platform build workflows.
dispatch:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
# Extract kernel name from PR title (format: "kernel-name: description")
# and verify the directory has the required flake.nix + build.toml files.
- name: Validate kernel directory
id: validate
env:
PR_TITLE: ${{ github.event.pull_request.title }}
run: |
if KERNEL=$(python3 .github/workflows/validate-kernel-pr.py "pr"); then
echo "kernel=$KERNEL" >> $GITHUB_OUTPUT
echo "skip=false" >> $GITHUB_OUTPUT
else
echo "skip=true" >> $GITHUB_OUTPUT
fi
# Fan out to per-platform build workflows (linux, mac, windows) based
# on the backends declared in the kernel's build.toml.
- name: Dispatch build workflows
if: steps.validate.outputs.skip == 'false'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_REPOSITORY: ${{ github.repository }}
KERNEL: ${{ steps.validate.outputs.kernel }}
PR_NUMBER: ${{ github.event.pull_request.number }}
HEAD_SHA: ${{ github.event.pull_request.head.sha }}
run: |
python3 .github/scripts/dispatch.py "$KERNEL" \
--mode pr \
--pr-number "$PR_NUMBER" \
--head-sha "$HEAD_SHA" \
--no-upload