56 lines
1.5 KiB
YAML
56 lines
1.5 KiB
YAML
name: Unit Test
|
|
|
|
on:
|
|
push:
|
|
branches: [ main ]
|
|
paths:
|
|
- "python/sglang/**"
|
|
- "test/**"
|
|
pull_request:
|
|
branches: [ main ]
|
|
paths:
|
|
- "python/sglang/**"
|
|
- "test/**"
|
|
workflow_dispatch:
|
|
|
|
concurrency:
|
|
group: unit-test-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
unit-test-jobs:
|
|
if: github.repository == 'sgl-project/sglang' || github.event_name == 'pull_request'
|
|
runs-on: 1-gpu-runner
|
|
strategy:
|
|
matrix:
|
|
test_type: ['backend-0', 'backend-1', 'frontend']
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v3
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
pip install --upgrade pip
|
|
pip install -e "python[dev]"
|
|
pip install flashinfer -i https://flashinfer.ai/whl/cu121/torch2.4/ --force-reinstall
|
|
|
|
- name: Run test
|
|
timeout-minutes: 20
|
|
run: |
|
|
if [ "${{ matrix.test_type }}" = "frontend" ]; then
|
|
cd test/lang
|
|
python3 run_suite.py --suite minimal
|
|
elif [ "${{ matrix.test_type }}" = "backend-0" ]; then
|
|
cd test/srt
|
|
python3 run_suite.py --suite minimal --range-begin 0 --range-end 8
|
|
elif [ "${{ matrix.test_type }}" = "backend-1" ]; then
|
|
cd test/srt
|
|
python3 run_suite.py --suite minimal --range-begin 8
|
|
fi
|
|
|
|
unit-test:
|
|
needs: unit-test-jobs
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Merge step
|
|
run: echo "This is an empty merge step" |