Skip to content

Commit e5b746f

Browse files
authored
[CI] switch to new CI runner (#589)
### What this PR does / why we need it? Add new runner to ref v0.7.3-dev to make CI more stable --------- Signed-off-by: wangli <wangli858794774@gmail.com>
1 parent fa116eb commit e5b746f

File tree

1 file changed

+31
-66
lines changed

1 file changed

+31
-66
lines changed
Lines changed: 31 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
#
22
# Copyright (c) 2025 Huawei Technologies Co., Ltd. All Rights Reserved.
3-
# This file is a part of the vllm-ascend project.
43
#
54
# Licensed under the Apache License, Version 2.0 (the "License");
65
# you may not use this file except in compliance with the License.
@@ -13,6 +12,7 @@
1312
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1413
# See the License for the specific language governing permissions and
1514
# limitations under the License.
15+
# This file is a part of the vllm-ascend project.
1616
#
1717

1818
name: 'e2e test'
@@ -36,80 +36,48 @@ defaults:
3636
run:
3737
shell: bash -el {0}
3838

39-
jobs:
40-
dispatch:
41-
name: vLLM Ascend test (dispatch)
42-
runs-on: ascend-ci-arm64
43-
outputs:
44-
number: ${{ steps.dispatch-device.outputs.number }}
45-
steps:
46-
- name: vLLM Ascend test (dispatch)
47-
id: dispatch-device
48-
run: |
49-
# Try to acquire lock to dispatch devices
50-
lockfile /tmp/dispatch.lock
51-
52-
# Print npu info
53-
npu-list /dev/null 2>&1
54-
55-
# Select first available device (Skip reserved davinci1 and davinci0)
56-
NUMBER=$(npu-list /dev/null 2>&1 | grep None | grep -v davinci1 | grep -v davinci0 | head -1 | cut -b 15)
57-
echo "Dispatch to /dev/davinci$NUMBER"
58-
echo "number=$NUMBER" >> $GITHUB_OUTPUT
39+
concurrency:
40+
group: pr-${{ github.event.pull_request.number }}
41+
cancel-in-progress: true
5942

43+
jobs:
6044
test:
61-
needs: [dispatch]
62-
name: vLLM Ascend test (self-host)
63-
runs-on: ascend-ci-arm64 # actionlint-ignore: runner-label
64-
45+
name: vLLM Ascend test v0.7.3-dev
46+
runs-on: linux-arm64-npu-1
6547
container:
6648
image: quay.io/ascend/cann:8.0.0-910b-ubuntu22.04-py3.10
67-
volumes:
68-
- /usr/local/dcmi:/usr/local/dcmi
69-
- /usr/local/bin/npu-smi:/usr/local/bin/npu-smi
70-
- /usr/local/Ascend/driver/lib64/:/usr/local/Ascend/driver/lib64/
71-
# Use self-host cache speed up pip and model download
72-
- /home/action/cache:/github/home/.cache/
73-
# for dispatch lock
74-
- /tmp/:/tmp/
75-
# for vllm and vllm-ascend
76-
- /data1/code:/code
77-
options: >-
78-
--device /dev/davinci${{ needs.dispatch.outputs.number }}
79-
--device /dev/davinci_manager
80-
--device /dev/devmm_svm
81-
--device /dev/hisi_hdc
8249
env:
8350
HF_ENDPOINT: https://hf-mirror.com
51+
HF_TOKEN: ${{ secrets.HF_TOKEN }}
8452
steps:
8553
- name: Check npu and CANN info
8654
run: |
8755
npu-smi info
8856
cat /usr/local/Ascend/ascend-toolkit/latest/"$(uname -i)"-linux/ascend_toolkit_install.info
89-
# unlock
90-
rm -rf /tmp/dispatch.lock
9157
9258
- name: Config mirrors
9359
run: |
9460
sed -i 's|ports.ubuntu.com|mirrors.tuna.tsinghua.edu.cn|g' /etc/apt/sources.list
9561
pip config set global.index-url https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple
62+
apt-get update -y
63+
apt install git -y
64+
git config --global --add safe.directory "$GITHUB_WORKSPACE"
65+
git config --global url."https://gh-proxy.test.osinfra.cn/https://github.com/".insteadOf https://github.com/
9666
9767
- name: Checkout vllm-project/vllm-ascend repo
9868
uses: actions/checkout@v4
9969

10070
- name: Install system dependencies
10171
run: |
102-
apt-get update -y
10372
apt-get -y install `cat packages.txt`
10473
apt-get -y install gcc g++ cmake libnuma-dev
10574
106-
- name: Install system dependencies
107-
run: |
108-
apt-get -y install `cat packages.txt`
109-
110-
- name: Clone vllm-project/vllm repo
111-
run: |
112-
git clone --depth 1 --branch v0.7.3 https://github.com/vllm-project/vllm.git ./vllm-empty
75+
- name: Checkout vllm-project/vllm repo
76+
uses: actions/checkout@v4
77+
with:
78+
repository: vllm-project/vllm
79+
ref: v0.7.3
80+
path: ./vllm-empty
11381

11482
- name: Install vllm-project/vllm from source
11583
working-directory: ./vllm-empty
@@ -118,14 +86,23 @@ jobs:
11886
11987
- name: Install vllm-project/vllm-ascend
12088
run: |
121-
pip uninstall -y numpy
12289
pip install -r requirements-dev.txt
12390
pip install -e .
12491
12592
- name: Install pta
12693
run: |
127-
cd /code/pta/
128-
pip install ./torch_npu-2.5.1.dev20250320-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
94+
if [ ! -d /root/.cache/pta ]; then
95+
mkdir -p /root/.cache/pta
96+
fi
97+
98+
if [ ! -f /root/.cache/pta/torch_npu-2.5.1.dev20250320-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl ]; then
99+
cd /root/.cache/pta
100+
rm -rf pytorch_v2.5.1_py310*
101+
wget https://pytorch-package.obs.cn-north-4.myhuaweicloud.com/pta/Daily/v2.5.1/20250320.3/pytorch_v2.5.1_py310.tar.gz
102+
tar -zxvf pytorch_v2.5.1_py310.tar.gz
103+
fi
104+
105+
pip install /root/.cache/pta/torch_npu-2.5.1.dev20250320-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
129106
130107
- name: Run vllm-project/vllm-ascend e2e test
131108
run: |
@@ -146,23 +123,11 @@ jobs:
146123
- "vllm_ascend/patch/patch_multi_step_worker.py"
147124
148125
- name: Run vllm-project/vllm-ascend key feature test
149-
if: steps.filter.outputs.speculative_tests_changed
126+
if: steps.filter.outputs.speculative_tests_changed == 'true'
150127
run: |
151128
pytest -sv tests/spec_decode/e2e/test_mtp_correctness.py
152129
pytest -sv tests/spec_decode --ignore=tests/spec_decode/e2e/test_mtp_correctness.py
153130
154131
- name: Run vllm-project/vllm test
155132
run: |
156133
pytest -sv
157-
158-
post_cleanup:
159-
name: vLLM Ascend test (post-cleanup)
160-
needs: [test]
161-
runs-on: ascend-ci-arm64 # actionlint-ignore: runner-label
162-
if: always()
163-
steps:
164-
- name: Remove dispatch lock if exists
165-
run: |
166-
if [ -f "/tmp/dispatch.lock" ]; then
167-
rm -f "/tmp/dispatch.lock"
168-
fi

0 commit comments

Comments
 (0)