[AMD] Stop rocm720 pr auto-runs (#29768)

Co-authored-by: bingxche <bingxche@users.noreply.github.com>
This commit is contained in:
YC Yen-Ching Tseng
2026-06-30 23:58:25 +08:00
committed by GitHub
co-authored by bingxche
parent f2756f53f3
commit c70cc96905
+21 -29
View File
@@ -16,14 +16,14 @@ on:
# - "sgl-kernel/**" # - "sgl-kernel/**"
# - ".github/workflows/pr-test-amd-rocm720.yml" # - ".github/workflows/pr-test-amd-rocm720.yml"
# - "docker/rocm.Dockerfile" # - "docker/rocm.Dockerfile"
pull_request: # pull_request:
paths: # paths:
- "python/**" # - "python/**"
- "scripts/ci/**" # - "scripts/ci/**"
- "test/**" # - "test/**"
- "sgl-kernel/**" # - "sgl-kernel/**"
- ".github/workflows/pr-test-amd-rocm720.yml" # - ".github/workflows/pr-test-amd-rocm720.yml"
- "docker/rocm.Dockerfile" # - "docker/rocm.Dockerfile"
workflow_dispatch: workflow_dispatch:
inputs: inputs:
target_stage_select: target_stage_select:
@@ -115,21 +115,17 @@ env:
DOCKERHUB_AMD_TOKEN: ${{ secrets.DOCKERHUB_AMD_TOKEN }} DOCKERHUB_AMD_TOKEN: ${{ secrets.DOCKERHUB_AMD_TOKEN }}
concurrency: concurrency:
# When called via workflow_call with run_all_tests=true, use a unique group per run to # Scheduled and manual full runs use unique groups so they never cancel each other.
# avoid collisions with direct schedule/workflow_dispatch triggers. We use run_all_tests # PR cancellation is kept only for pull_request events if this trigger is re-enabled.
# (not github.event_name) to detect this, because github.event_name inherits from the caller. group: pr-test-amd-rocm720-${{ github.event_name == 'schedule' && format('schedule-{0}', github.run_id) || (inputs.run_all_tests || github.event_name == 'workflow_dispatch') && format('full-{0}', github.run_id) || inputs.pr_head_sha || inputs.ref || github.ref }}
# Manual dispatch runs also get unique groups so they never cancel each other. cancel-in-progress: ${{ github.event_name == 'pull_request' }}
group: pr-test-amd-rocm720-${{ (inputs.run_all_tests || github.event_name == 'workflow_dispatch') && format('full-{0}', github.run_id) || inputs.pr_head_sha || inputs.ref || github.ref }}
cancel-in-progress: ${{ !inputs.run_all_tests && github.event_name != 'workflow_call' && github.event_name != 'workflow_dispatch' }}
jobs: jobs:
call-gate: call-gate:
# Runs on PRs (pr-gate.yml enforces the run-ci label / blocks drafts), the daily # Runs on the daily '30 17 * * *' cron, workflow_dispatch and workflow_call.
# '30 17 * * *' cron, workflow_dispatch and workflow_call. It is skipped only on the # It is skipped only on the 6h ('0 */6 * * *') cron, which cascades a skip
# 6h ('0 */6 * * *') cron, which cascades a skip to check-changes and every existing # to check-changes and every existing test job so that cron runs the two
# test job, so that cron runs the two dsv4 jobs only. On PRs the existing jobs are # dsv4 jobs only.
# additionally kept off via the change-detection guard in check-changes, so only the
# dsv4 jobs run there -- and only when this gate passes (they `needs` it).
if: github.event.schedule != '0 */6 * * *' if: github.event.schedule != '0 */6 * * *'
uses: ./.github/workflows/pr-gate.yml uses: ./.github/workflows/pr-gate.yml
secrets: inherit secrets: inherit
@@ -183,9 +179,7 @@ jobs:
- name: Detect file changes - name: Detect file changes
id: filter id: filter
uses: dorny/paths-filter@v3 uses: dorny/paths-filter@v3
# On pull_request only the dsv4 jobs run; skip change detection on PRs so the if: steps.run-mode.outputs.run_all_tests != 'true'
# per-stage outputs stay 'false' and the existing test jobs are gated off.
if: steps.run-mode.outputs.run_all_tests != 'true' && github.event_name != 'pull_request'
with: with:
filters: | filters: |
main_package: main_package:
@@ -1141,12 +1135,10 @@ jobs:
-w "/sglang-checkout/test" python3 run_suite.py --hw amd --suite stage-b-test-large-8-gpu-mi35x-disaggregation-amd --timeout-per-file 1800 ${{ needs.check-changes.outputs.continue_on_error == 'true' && '--continue-on-error' || '' }} -w "/sglang-checkout/test" python3 run_suite.py --hw amd --suite stage-b-test-large-8-gpu-mi35x-disaggregation-amd --timeout-per-file 1800 ${{ needs.check-changes.outputs.continue_on_error == 'true' && '--continue-on-error' || '' }}
# =============================================== DeepSeek-V4 (MI35x, 8-GPU) ==================================================== # =============================================== DeepSeek-V4 (MI35x, 8-GPU) ====================================================
# On `pull_request` and the 6h ('0 */6 * * *') cron these are the ONLY jobs that run; # On the 6h ('0 */6 * * *') cron these are the only jobs that run; they also
# they also run on the daily cron alongside the full suite. On PRs they run only when # run on the daily cron alongside the full suite. Scheduled runs pass
# call-gate succeeds, i.e. the PR carries the run-ci label (and is not a draft), so # --continue-on-error. They stay selectable via workflow_dispatch / run on
# they are gated just like every other PR test job. On PR they hard-fail (a failure # workflow_call full runs.
# blocks merge); on any scheduled run they pass --continue-on-error. They stay
# selectable via workflow_dispatch / run on workflow_call full runs.
dsv4-flash-fp4-fp8-amd-rocm720: dsv4-flash-fp4-fp8-amd-rocm720:
needs: [call-gate] needs: [call-gate]
if: | if: |