[Doctest] add installation doctest (#1179)

### What this PR does / why we need it?
Install doctest

### Does this PR introduce _any_ user-facing change?
No

### How was this patch tested?
CI passed

Related: https://github.com/vllm-project/vllm-ascend/pull/983

Co-authored-by: wangli <wangli858794774@gmail.com>

Signed-off-by: Yikun Jiang <yikunkero@gmail.com>
Co-authored-by: wangli <wangli858794774@gmail.com>
This commit is contained in:
Yikun Jiang
2025-06-17 08:52:26 +08:00
committed by GitHub
parent 96fa7ff63b
commit 9d3cbc0953
7 changed files with 89 additions and 12 deletions

View File

@@ -45,7 +45,30 @@ function wait_for_exit() {
_info "===> Wait for ${VLLM_PID} to exit."
sleep 1
done
_info "===> Wait for ${VLLM_PID} to exit."
_info "===> Process ${VLLM_PID} has exited."
}
VENV_PATH=/tmp/vllm_venv
function clean_venv() {
if [[ -n "$VENV_PATH" && -d "$VENV_PATH" ]]; then
_info "Cleaning up default virtual env path: ${VENV_PATH}"
deactivate || true
rm -rf "$VENV_PATH"
fi
}
function create_vllm_venv() {
# make a clean env path
clean_venv
_info "Creating vllm virtual environment at ${VENV_PATH}"
python3 -m venv ${VENV_PATH}
source ${VENV_PATH}/bin/activate
}
function get_version() {
local VERSION_NAME="$1"
python3 "${SCRIPT_DIR}/../../docs/source/conf.py" | jq .${VERSION_NAME} | tr -d '"'
}
SCRIPT_DIR=$(cd "$(dirname "$0")" && pwd)

View File

@@ -23,13 +23,11 @@ function simple_test() {
}
function quickstart_offline_test() {
export VLLM_USE_MODELSCOPE=true
# Do real script test
python3 "${SCRIPT_DIR}/../../examples/offline_inference_npu.py"
}
function quickstart_online_test() {
export VLLM_USE_MODELSCOPE=true
vllm serve Qwen/Qwen2.5-0.5B-Instruct &
wait_url_ready "vllm serve" "localhost:8000/v1/models"
# Do real curl test

View File

@@ -0,0 +1,42 @@
#!/bin/bash
#
# Copyright (c) 2025 Huawei Technologies Co., Ltd. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# This file is a part of the vllm-ascend project.
#
trap clean_venv EXIT
function install_binary_test() {
create_vllm_venv
PIP_VLLM_VERSION=$(get_version pip_vllm_version)
PIP_VLLM_ASCEND_VERSION=$(get_version pip_vllm_ascend_version)
_info "====> Install vllm==${PIP_VLLM_VERSION} and vllm-ascend ${PIP_VLLM_ASCEND_VERSION}"
pip install vllm=="$(get_version pip_vllm_version)"
pip install vllm-ascend=="$(get_version pip_vllm_ascend_version)"
pip list | grep vllm
# Verify the installation
_info "====> Run offline example test"
pip install modelscope
python3 "${SCRIPT_DIR}/../../examples/offline_inference_npu.py"
}
_info "====> Start install_binary_test"
install_binary_test

View File

@@ -21,7 +21,13 @@ set -eo errexit
. $(dirname "$0")/common.sh
export VLLM_USE_MODELSCOPE=true
export VLLM_LOGGING_LEVEL=ERROR
_info "====> Start Quickstart test"
. "${SCRIPT_DIR}/doctests/001-quickstart-test.sh"
_info "====> Start pip binary installation test"
. "${SCRIPT_DIR}/doctests/002-pip-binary-installation-test.sh"
_info "Doctest passed."