94057c3d3e
PR Test (NPU) / check-changes (push) Has been cancelled
PR Test (NPU) / pr-gate (push) Has been cancelled
PR Test (NPU) / set-image-config (push) Has been cancelled
PR Test (NPU) / stage-b-test-1-npu-a2 (0) (push) Has been cancelled
PR Test (NPU) / stage-b-test-1-npu-a2 (1) (push) Has been cancelled
PR Test (NPU) / stage-b-test-2-npu-a2 (0) (push) Has been cancelled
PR Test (NPU) / stage-b-test-2-npu-a2 (1) (push) Has been cancelled
PR Test (NPU) / stage-b-test-4-npu-a3 (push) Has been cancelled
PR Test (NPU) / stage-b-test-16-npu-a3 (push) Has been cancelled
PR Test (NPU) / multimodal-gen-test-1-npu-a3 (push) Has been cancelled
PR Test (NPU) / multimodal-gen-test-2-npu-a3 (push) Has been cancelled
PR Test (Arm64) / pr-gate (push) Has been cancelled
PR Test (Arm64) / check-changes (push) Has been cancelled
PR Test (Arm64) / build-test (push) Has been cancelled
PR Test (sgl-router) / gate (push) Has been cancelled
PR Test (sgl-router) / tier-1 — lint (push) Has been cancelled
PR Test (sgl-router) / tier-2 — build + test (push) Has been cancelled
PR Test (sgl-router) / tier-3 — docker (placeholder) (push) Has been cancelled
PR Test (sgl-router) / tier-3 — k8s integration (push) Has been cancelled
PR Test (sgl-router) / tier-3 — e2e (push) Has been cancelled
PR Test (sgl-router) / finish (push) Has been cancelled
PR Test (NPU) / single-node-poc (map[name:qwen3_6_27b_w8a8_1p_in64k_out1k_50ms runner:linux-aarch64-a3-2 test_case:test/registered/ascend/performance/qwen3_6_27b/test_npu_qwen3_6_27b_w8a8_1p_in64k_out1k_50ms.py test_type:perf]) (push) Has been cancelled
PR Test (NPU) / pr-test-npu-finish (push) Has been cancelled
PR Test (Xeon) / pr-gate (push) Has been cancelled
PR Test (Xeon) / check-changes (push) Has been cancelled
PR Test (Xeon) / build-test (, xeon-gnr, base-b-test-cpu) (push) Has been cancelled
PR Test (XPU) / check-changes (push) Has been cancelled
PR Test (XPU) / pr-gate (push) Has been cancelled
PR Test (XPU) / stage-a-test-1-gpu-xpu (push) Has been cancelled
PR Test (XPU) / wait-for-stage-a (push) Has been cancelled
PR Test (XPU) / stage-b-test-1-gpu-xpu (push) Has been cancelled
PR Test (XPU) / finish (push) Has been cancelled
CI Model Inventory / build-inventory (push) Has been cancelled
Lint / lint (push) Has been cancelled
PR Benchmark (SMG Components) / Benchmark Compilation Check (push) Has been cancelled
PR Benchmark (SMG Components) / Benchmark - Manual Policy (push) Has been cancelled
PR Benchmark (SMG Components) / Benchmark - Request Processing (push) Has been cancelled
PR Benchmark (SMG Components) / Benchmark Summary (push) Has been cancelled
PR Test (SMG) / build-wheel (push) Has been cancelled
Release SGLang Model Gateway to PyPI / build on windows (x86_64 - auto) (push) Has been cancelled
Release SGLang Model Gateway to PyPI / build on macos (x86_64 - auto) (push) Has been cancelled
PR Test (SMG) / python-unit-tests (push) Has been cancelled
PR Test (SMG) / unit-tests (push) Has been cancelled
PR Test (SMG) / benchmarks (push) Has been cancelled
PR Test (SMG) / chat-completions (push) Has been cancelled
PR Test (SMG) / chat-completions-4gpu (push) Has been cancelled
PR Test (SMG) / e2e (push) Has been cancelled
PR Test (SMG) / docker-build-test (push) Has been cancelled
PR Test (SMG) / k8s-integration (push) Has been cancelled
PR Test (SMG) / finish (push) Has been cancelled
PR Test (SMG) / summarize-benchmarks (push) Has been cancelled
Release SGLang Model Gateway Docker Image / publish (push) Has been cancelled
Release SGLang Model Gateway to PyPI / build on macos (aarch64 - auto) (push) Has been cancelled
Release SGLang Model Gateway to PyPI / build on linux (aarch64 - auto) (push) Has been cancelled
Release SGLang Model Gateway to PyPI / build on linux (x86_64 - auto) (push) Has been cancelled
Release SGLang Model Gateway to PyPI / build on linux (aarch64 - musllinux_1_1) (push) Has been cancelled
Release SGLang Model Gateway to PyPI / build on linux (x86_64 - musllinux_1_1) (push) Has been cancelled
Release SGLang Model Gateway to PyPI / Build SDist (push) Has been cancelled
Release SGLang Model Gateway to PyPI / Upload to PyPI (push) Has been cancelled
Release SGLang Kernels / build-cu129-matrix (aarch64, 12.9, 3.10, arm-kernel-build-node) (push) Has been cancelled
Release SGLang Kernels / build-cu129-matrix (x86_64, 12.9, 3.10, x64-kernel-build-node) (push) Has been cancelled
Release SGLang Kernels / release-cu129 (push) Has been cancelled
Release SGLang Kernels / build-cu130-matrix (aarch64, 13.0, 3.10, arm-kernel-build-node) (push) Has been cancelled
Release SGLang Kernels / build-cu130-matrix (x86_64, 13.0, 3.10, x64-kernel-build-node) (push) Has been cancelled
Release SGLang Kernels / release-cu130 (push) Has been cancelled
Release SGLang Kernels / build-rocm-matrix (3.10, 700) (push) Has been cancelled
Release SGLang Kernels / build-rocm-matrix (3.10, 720) (push) Has been cancelled
Release SGLang Kernels / release-rocm700 (push) Has been cancelled
Release SGLang Kernels / release-rocm720 (push) Has been cancelled
Release SGLang Kernels / build-musa43 (43, 3.10) (push) Has been cancelled
Release SGLang Kernels / release-musa43 (push) Has been cancelled
182 lines
7.1 KiB
YAML
182 lines
7.1 KiB
YAML
name: Nightly Test (Intel)
|
|
|
|
on:
|
|
schedule:
|
|
# 22:15 IST (UTC+5:30) → 16:45 UTC daily.
|
|
- cron: '45 16 * * *'
|
|
push:
|
|
branches:
|
|
- main
|
|
paths:
|
|
- "python/sglang/version.py"
|
|
workflow_dispatch:
|
|
inputs:
|
|
continue_on_error:
|
|
description: 'Continue on error (do not fail the workflow on test failures)'
|
|
required: false
|
|
type: boolean
|
|
default: true
|
|
workflow_call:
|
|
inputs:
|
|
ref:
|
|
description: "Branch, tag or SHA to checkout"
|
|
required: false
|
|
type: string
|
|
default: ""
|
|
continue_on_error:
|
|
description: 'Continue on error (do not fail the workflow on test failures)'
|
|
required: false
|
|
type: boolean
|
|
default: true
|
|
|
|
concurrency:
|
|
group: nightly-test-intel-${{ github.event_name == 'workflow_dispatch' && format('manual-{0}', github.run_id) || inputs.ref && format('caller-{0}', github.run_id) || github.ref }}
|
|
cancel-in-progress: ${{ !inputs.ref && github.event_name != 'workflow_call' && github.event_name != 'workflow_dispatch' }}
|
|
|
|
jobs:
|
|
nightly-xpu-1-gpu:
|
|
# Placeholder: no models currently registered to nightly-xpu-1-gpu run on
|
|
# intel-bmg-nightly. Add a model test to this suite to re-enable.
|
|
if: false
|
|
runs-on: intel-bmg-nightly
|
|
steps:
|
|
- name: Placeholder
|
|
run: echo "nightly-xpu-1-gpu has no validated models; skipping."
|
|
|
|
nightly-xpu-2-gpu:
|
|
if: github.repository == 'sgl-project/sglang'
|
|
runs-on: intel-bmg-nightly
|
|
env:
|
|
DOCKERHUB_INTEL_USERNAME: ${{ secrets.DOCKERHUB_INTEL_USERNAME }}
|
|
DOCKERHUB_INTEL_TOKEN: ${{ secrets.DOCKERHUB_INTEL_TOKEN }}
|
|
steps:
|
|
- name: Reset workspace ownership
|
|
run: |
|
|
docker run --rm -v "${{ github.workspace }}:/w" busybox:latest \
|
|
chown -R "$(id -u):$(id -g)" /w || true
|
|
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
ref: ${{ inputs.ref || github.sha }}
|
|
|
|
- name: Start CI container (pull intel/sglang-dev:latest)
|
|
run: |
|
|
export HF_TOKEN="$(cat ~/huggingface_token.txt)"
|
|
bash scripts/ci/xpu/xpu_ci_start_container.sh
|
|
env:
|
|
GITHUB_WORKSPACE: ${{ github.workspace }}
|
|
|
|
- name: HF login + install run_suite extras
|
|
timeout-minutes: 10
|
|
run: |
|
|
docker exec ci_sglang_xpu /opt/venv/bin/python3 -m pip install --no-cache-dir tabulate
|
|
docker exec ci_sglang_xpu /opt/venv/bin/python3 -m pip install --no-cache-dir --no-deps xgrammar==0.1.33
|
|
docker exec ci_sglang_xpu /opt/venv/bin/python3 -m pip install --no-cache-dir "lm-eval==0.4.9"
|
|
docker exec ci_sglang_xpu /bin/bash -c '/opt/venv/bin/hf auth login --token ${HF_TOKEN}'
|
|
|
|
- name: Nightly Test (2-GPU XPU)
|
|
timeout-minutes: 60
|
|
run: |
|
|
touch github_summary.md
|
|
docker exec ci_sglang_xpu bash -c "
|
|
source /opt/venv/bin/activate &&
|
|
cd /sglang-checkout/test &&
|
|
GITHUB_STEP_SUMMARY=/sglang-checkout/github_summary.md \
|
|
python3 run_suite.py --hw xpu --suite nightly-xpu-2-gpu --nightly --timeout-per-file 7200 ${{ (github.event_name == 'schedule' || inputs.continue_on_error) && '--continue-on-error' || '' }}
|
|
" || TEST_EXIT_CODE=$?
|
|
echo "$(<github_summary.md)" >> $GITHUB_STEP_SUMMARY || true
|
|
exit ${TEST_EXIT_CODE:-0}
|
|
|
|
- name: Cleanup container
|
|
if: always()
|
|
run: |
|
|
docker run --rm -v "${{ github.workspace }}:/w" busybox:latest \
|
|
chown -R "$(id -u):$(id -g)" /w || true
|
|
rm -rf test/result.jsonl test/results test/.pytest_cache .pytest_cache || true
|
|
find . -type d -name "__pycache__" -prune -exec rm -rf {} + || true
|
|
find . -type f -name "*.pyc" -delete || true
|
|
docker rm -f ci_sglang_xpu || true
|
|
if [[ -n "${CI_SGLANG_XPU_IMAGE:-}" ]]; then
|
|
docker rmi -f "${CI_SGLANG_XPU_IMAGE}" || true
|
|
fi
|
|
|
|
nightly-xpu-4-gpu:
|
|
if: github.repository == 'sgl-project/sglang'
|
|
runs-on: intel-bmg-nightly
|
|
env:
|
|
DOCKERHUB_INTEL_USERNAME: ${{ secrets.DOCKERHUB_INTEL_USERNAME }}
|
|
DOCKERHUB_INTEL_TOKEN: ${{ secrets.DOCKERHUB_INTEL_TOKEN }}
|
|
steps:
|
|
- name: Reset workspace ownership
|
|
run: |
|
|
docker run --rm -v "${{ github.workspace }}:/w" busybox:latest \
|
|
chown -R "$(id -u):$(id -g)" /w || true
|
|
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
ref: ${{ inputs.ref || github.sha }}
|
|
|
|
- name: Start CI container (pull intel/sglang-dev:latest)
|
|
run: |
|
|
export HF_TOKEN="$(cat ~/huggingface_token.txt)"
|
|
bash scripts/ci/xpu/xpu_ci_start_container.sh
|
|
env:
|
|
GITHUB_WORKSPACE: ${{ github.workspace }}
|
|
|
|
- name: HF login + install run_suite extras
|
|
timeout-minutes: 10
|
|
run: |
|
|
docker exec ci_sglang_xpu /opt/venv/bin/python3 -m pip install --no-cache-dir tabulate
|
|
docker exec ci_sglang_xpu /opt/venv/bin/python3 -m pip install --no-cache-dir --no-deps xgrammar==0.1.33
|
|
docker exec ci_sglang_xpu /opt/venv/bin/python3 -m pip install --no-cache-dir "lm-eval==0.4.9"
|
|
docker exec ci_sglang_xpu /bin/bash -c '/opt/venv/bin/hf auth login --token ${HF_TOKEN}'
|
|
|
|
- name: Nightly Test (4-GPU XPU)
|
|
timeout-minutes: 120
|
|
run: |
|
|
touch github_summary.md
|
|
docker exec ci_sglang_xpu bash -c "
|
|
source /opt/venv/bin/activate &&
|
|
cd /sglang-checkout/test &&
|
|
GITHUB_STEP_SUMMARY=/sglang-checkout/github_summary.md \
|
|
python3 run_suite.py --hw xpu --suite nightly-xpu-4-gpu --nightly --timeout-per-file 7200 ${{ (github.event_name == 'schedule' || inputs.continue_on_error) && '--continue-on-error' || '' }}
|
|
" || TEST_EXIT_CODE=$?
|
|
echo "$(<github_summary.md)" >> $GITHUB_STEP_SUMMARY || true
|
|
exit ${TEST_EXIT_CODE:-0}
|
|
|
|
- name: Cleanup container
|
|
if: always()
|
|
run: |
|
|
docker run --rm -v "${{ github.workspace }}:/w" busybox:latest \
|
|
chown -R "$(id -u):$(id -g)" /w || true
|
|
rm -rf test/result.jsonl test/results test/.pytest_cache .pytest_cache || true
|
|
find . -type d -name "__pycache__" -prune -exec rm -rf {} + || true
|
|
find . -type f -name "*.pyc" -delete || true
|
|
docker rm -f ci_sglang_xpu || true
|
|
if [[ -n "${CI_SGLANG_XPU_IMAGE:-}" ]]; then
|
|
docker rmi -f "${CI_SGLANG_XPU_IMAGE}" || true
|
|
fi
|
|
|
|
check-all-jobs:
|
|
if: always() && (github.repository == 'sgl-project/sglang' || github.event_name == 'workflow_dispatch')
|
|
needs:
|
|
- nightly-xpu-2-gpu
|
|
- nightly-xpu-4-gpu
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Check if any job failed
|
|
run: |
|
|
if [[ "${{ contains(needs.*.result, 'failure') }}" == "true" ]]; then
|
|
echo "One or more nightly test jobs failed"
|
|
exit 1
|
|
fi
|
|
if [[ "${{ contains(needs.*.result, 'cancelled') }}" == "true" ]]; then
|
|
echo "One or more nightly test jobs were cancelled"
|
|
exit 1
|
|
fi
|
|
echo "All nightly test jobs passed"
|