From 8be0e1bc9cd5b1f90d5f6b8326eac5a3b20e531a Mon Sep 17 00:00:00 2001 From: Keyang Ru Date: Thu, 6 Nov 2025 00:21:11 -0800 Subject: [PATCH] fix ci (#12760) --- .github/workflows/pr-test-rust.yml | 10 ++++++---- sgl-router/py_test/conftest.py | 11 +++++++++-- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/.github/workflows/pr-test-rust.yml b/.github/workflows/pr-test-rust.yml index 2170fe1b0..b944bc516 100644 --- a/.github/workflows/pr-test-rust.yml +++ b/.github/workflows/pr-test-rust.yml @@ -166,10 +166,10 @@ jobs: source "$HOME/.cargo/env" export RUSTC_WRAPPER=sccache cd sgl-router - python3 -m venv .venv python3 -m pip install --upgrade pip maturin - maturin develop --release --profile ci --features vendored-openssl - + pip uninstall -y sglang-router + maturin build --release --profile ci --features vendored-openssl + pip install target/wheels/*.whl - name: Run Python unit tests run: | @@ -266,7 +266,9 @@ jobs: cd sgl-router python3 -m venv .venv python3 -m pip install --upgrade pip maturin - maturin develop --release --profile ci --features vendored-openssl + pip uninstall -y sglang-router + maturin build --release --profile ci --features vendored-openssl + pip install target/wheels/*.whl - name: Run Python E2E response API tests run: | diff --git a/sgl-router/py_test/conftest.py b/sgl-router/py_test/conftest.py index 894e12bf5..b3c6dc66a 100644 --- a/sgl-router/py_test/conftest.py +++ b/sgl-router/py_test/conftest.py @@ -1,8 +1,15 @@ import sys +from importlib.util import find_spec from pathlib import Path -# Ensure local sources in py_src are importable ahead of any installed package +# Only add py_src to path if the wheel is not installed (for local development) +# This ensures CI tests use the installed wheel which contains the Rust extension _ROOT = Path(__file__).resolve().parents[1] _SRC = _ROOT / "py_src" -if str(_SRC) not in sys.path: + +# Check if sglang_router is already installed with the Rust extension +_wheel_installed = find_spec("sglang_router.sglang_router_rs") is not None + +# Only add py_src if wheel is not installed (development mode) +if not _wheel_installed and str(_SRC) not in sys.path: sys.path.insert(0, str(_SRC))