Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 13 additions & 1 deletion .github/workflows/pr-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ name: PR Test
# zero `from megatron` imports.
# * Nightly full CI on main: every suite with `--match-all-labels`, like
# miles main's cron (catches drift in floating deps: sglang main tip,
# image `latest`, HF snapshots).
# image `latest`, HF snapshots), and `--continue-on-error` so one failing
# test does not hide the rest of its suite.

on:
pull_request:
Expand All @@ -41,6 +42,11 @@ on:
required: false
type: string
default: 'latest'
continue_on_error:
description: 'Keep running a suite after a test fails, as nightly does'
required: false
type: boolean
default: false

permissions:
contents: read
Expand Down Expand Up @@ -268,6 +274,7 @@ jobs:
--labels ${{ join(github.event.pull_request.labels.*.name, ' ') }}
${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'schedule' || needs.ci-gate.outputs.docs_only == 'true' || contains(github.event.pull_request.labels.*.name, 'run-ci-image') || contains(github.event.pull_request.labels.*.name, 'run-ci-all')) && '--match-all-labels' || '' }}
${{ github.event_name == 'schedule' && '--nightly' || '' }}
${{ (github.event_name == 'schedule' || inputs.continue_on_error) && '--continue-on-error' || '' }}
secrets: inherit

# Stage B: CPU-only slower bucket (currently empty; reserved for future
Expand All @@ -284,6 +291,7 @@ jobs:
--labels ${{ join(github.event.pull_request.labels.*.name, ' ') }}
${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'schedule' || needs.ci-gate.outputs.docs_only == 'true' || contains(github.event.pull_request.labels.*.name, 'run-ci-image') || contains(github.event.pull_request.labels.*.name, 'run-ci-all')) && '--match-all-labels' || '' }}
${{ github.event_name == 'schedule' && '--nightly' || '' }}
${{ (github.event_name == 'schedule' || inputs.continue_on_error) && '--continue-on-error' || '' }}
secrets: inherit

# Stage B GPU: fast-gpu bucket, runs once stage-a-cpu is green (fast-fail:
Expand All @@ -309,6 +317,7 @@ jobs:
--labels ${{ join(github.event.pull_request.labels.*.name, ' ') }}
${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'schedule' || contains(github.event.pull_request.labels.*.name, 'run-ci-image') || contains(github.event.pull_request.labels.*.name, 'run-ci-all')) && '--match-all-labels' || '' }}
${{ github.event_name == 'schedule' && '--nightly' || '' }}
${{ (github.event_name == 'schedule' || inputs.continue_on_error) && '--continue-on-error' || '' }}
secrets: inherit

# Stage B GPU: 4-GPU distributed tests on the 5gpu runner.
Expand All @@ -330,6 +339,7 @@ jobs:
--labels ${{ join(github.event.pull_request.labels.*.name, ' ') }}
${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'schedule' || contains(github.event.pull_request.labels.*.name, 'run-ci-image') || contains(github.event.pull_request.labels.*.name, 'run-ci-all')) && '--match-all-labels' || '' }}
${{ github.event_name == 'schedule' && '--nightly' || '' }}
${{ (github.event_name == 'schedule' || inputs.continue_on_error) && '--continue-on-error' || '' }}
secrets: inherit

# Fan-in so each stage-c needs one job instead of every stage-b.
Expand Down Expand Up @@ -363,6 +373,7 @@ jobs:
--labels ${{ join(github.event.pull_request.labels.*.name, ' ') }}
${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'schedule' || contains(github.event.pull_request.labels.*.name, 'run-ci-image') || contains(github.event.pull_request.labels.*.name, 'run-ci-all')) && '--match-all-labels' || '' }}
${{ github.event_name == 'schedule' && '--nightly' || '' }}
${{ (github.event_name == 'schedule' || inputs.continue_on_error) && '--continue-on-error' || '' }}
secrets: inherit

# Stage C GPU: e2e suite on the 5gpu runner.
Expand All @@ -384,4 +395,5 @@ jobs:
--labels ${{ join(github.event.pull_request.labels.*.name, ' ') }}
${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'schedule' || contains(github.event.pull_request.labels.*.name, 'run-ci-image') || contains(github.event.pull_request.labels.*.name, 'run-ci-all')) && '--match-all-labels' || '' }}
${{ github.event_name == 'schedule' && '--nightly' || '' }}
${{ (github.event_name == 'schedule' || inputs.continue_on_error) && '--continue-on-error' || '' }}
secrets: inherit
Loading