Skip to content

Commit 3dce309

Browse files
authored
Merge branch 'vllm-project:main' into main
2 parents bb5799b + 097e714 commit 3dce309

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

68 files changed

+3102
-484
lines changed

.github/workflows/accuracy_test.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,6 +173,8 @@ jobs:
173173

174174
- name: Install vllm-project/vllm-ascend
175175
working-directory: ./vllm-ascend
176+
env:
177+
PIP_EXTRA_INDEX_URL: https://mirrors.huaweicloud.com/ascend/repos/pypi
176178
run: |
177179
pip install -r requirements-dev.txt
178180
pip install -e .
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
2+
name: 'doc-codespell'
3+
4+
on:
5+
pull_request:
6+
branches:
7+
- 'main'
8+
- '*-dev'
9+
paths:
10+
- 'docs/**'
11+
12+
jobs:
13+
codespell:
14+
runs-on: ubuntu-latest
15+
strategy:
16+
matrix:
17+
python-version: ["3.10"]
18+
steps:
19+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
20+
- name: Set up Python ${{ matrix.python-version }}
21+
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
22+
with:
23+
python-version: ${{ matrix.python-version }}
24+
- name: Install dependencies
25+
run: |
26+
python -m pip install --upgrade pip
27+
pip install -r requirements-lint.txt
28+
- name: Run codespell check
29+
run: |
30+
CODESPELL_EXCLUDES=('--skip' 'tests/prompts/**,./benchmarks/sonnet.txt,*tests/lora/data/**,build/**,./vllm_ascend.egg-info/**')
31+
CODESPELL_IGNORE_WORDS=('-L' 'CANN,cann,NNAL,nnal,ASCEND,ascend,EnQue,CopyIn')
32+
33+
codespell --toml pyproject.toml "${CODESPELL_EXCLUDES[@]}" "${CODESPELL_IGNORE_WORDS[@]}"
Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
name: 'image / openEuler'
2+
# This is a docker build check and publish job:
3+
# 1. PR Triggered docker image build check
4+
# - is for image build check
5+
# - Enable on main/*-dev branch
6+
# - push: ${{ github.event_name != 'pull_request' }} ==> false
7+
# 2. branches push trigger image publish
8+
# - is for branch/dev/nightly image
9+
# - commits are merge into main/*-dev ==> vllm-ascend:main / vllm-ascend:*-dev
10+
# 3. tags push trigger image publish
11+
# - is for final release image
12+
# - Publish when tag with v* (pep440 version) ===> vllm-ascend:v1.2.3-openeuler|latest / vllm-ascend:v1.2.3rc1-openeuler
13+
on:
14+
pull_request:
15+
branches:
16+
- 'main'
17+
- '*-dev'
18+
paths:
19+
- '.github/workflows/image_310p_openeuler.yml'
20+
- 'Dockerfile.310p.openEuler'
21+
- 'vllm_ascend/**'
22+
- 'setup.py'
23+
- 'pyproject.toml'
24+
- 'requirements.txt'
25+
- 'cmake/**'
26+
- 'CMakeLists.txt'
27+
- 'csrc/**'
28+
push:
29+
# Publish image when tagging, the Dockerfile in tag will be build as tag image
30+
branches:
31+
- 'main'
32+
- '*-dev'
33+
tags:
34+
- 'v*'
35+
paths:
36+
- '.github/workflows/image_310p.openeuler.yml'
37+
- 'Dockerfile.310p.openEuler'
38+
- 'vllm_ascend/**'
39+
40+
jobs:
41+
build:
42+
name: vllm-ascend image build
43+
runs-on: >-
44+
${{
45+
github.event_name == 'push' && github.repository_owner == 'vllm-project' &&
46+
'ubuntu-latest' ||
47+
'ubuntu-24.04-arm'
48+
}}
49+
steps:
50+
- uses: actions/checkout@v4
51+
52+
- name: Print
53+
run: |
54+
lscpu
55+
56+
- name: Docker meta
57+
id: meta
58+
uses: docker/metadata-action@v5
59+
with:
60+
# TODO(yikun): add more hub image and a note on release policy for container image
61+
images: |
62+
quay.io/ascend/vllm-ascend
63+
# Note for test case
64+
# https://github.com/marketplace/actions/docker-metadata-action#typeref
65+
# 1. branch job pulish per main/*-dev branch commits
66+
# 2. main and dev pull_request is build only, so the tag pr-N-openeuler is fine
67+
# 3. only pep440 matched tag will be published:
68+
# - v0.7.1 --> v0.7.1-openeuler, latest
69+
# - pre/post/dev: v0.7.1rc1-openeuler/v0.7.1rc1-openeuler/v0.7.1rc1.dev1-openeuler/v0.7.1.post1-openeuler, no latest
70+
# which follow the rule from vLLM with prefix v
71+
# TODO(yikun): the post release might be considered as latest release
72+
tags: |
73+
type=ref,event=branch,suffix=-310p-openeuler
74+
type=ref,event=pr,suffix=-openeuler
75+
type=pep440,pattern={{raw}},suffix=-310p-openeuler
76+
77+
- name: Free up disk space
78+
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1
79+
with:
80+
tool-cache: true
81+
docker-images: false
82+
83+
- name: Build - Set up QEMU
84+
uses: docker/setup-qemu-action@v3
85+
86+
- name: Build - Set up Docker Buildx
87+
uses: docker/setup-buildx-action@v3
88+
89+
- name: Publish - Login to Quay Container Registry
90+
if: ${{ github.event_name == 'push' && github.repository_owner == 'vllm-project' }}
91+
uses: docker/login-action@v3
92+
with:
93+
registry: quay.io
94+
username: ${{ vars.QUAY_USERNAME }}
95+
password: ${{ secrets.QUAY_PASSWORD }}
96+
97+
- name: Build and push 310p
98+
uses: docker/build-push-action@v6
99+
with:
100+
platforms: >-
101+
${{
102+
github.event_name == 'push' && github.repository_owner == 'vllm-project' &&
103+
'linux/amd64,linux/arm64' ||
104+
'linux/arm64'
105+
}}
106+
# use the current repo path as the build context, ensure .git is contained
107+
context: .
108+
# only trigger when tag, branch/main push
109+
push: ${{ github.event_name == 'push' && github.repository_owner == 'vllm-project' }}
110+
labels: ${{ steps.meta.outputs.labels }}
111+
tags: ${{ steps.meta.outputs.tags }}
112+
file: Dockerfile.310p.openEuler
113+
build-args: |
114+
PIP_INDEX_URL=https://pypi.org/simple
Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
name: 'image / Ubuntu'
2+
# This is a docker build check and publish job:
3+
# 1. PR Triggered docker image build check
4+
# - is for image build check
5+
# - Enable on main/*-dev branch
6+
# - push: ${{ github.event_name != 'pull_request' }} ==> false
7+
# 2. branches push trigger image publish
8+
# - is for branch/dev/nightly image
9+
# - commits are merge into main/*-dev ==> vllm-ascend:main / vllm-ascend:*-dev
10+
# 3. tags push trigger image publish
11+
# - is for final release image
12+
# - Publish when tag with v* (pep440 version) ===> vllm-ascend:v1.2.3|latest / vllm-ascend:v1.2.3rc1
13+
on:
14+
pull_request:
15+
branches:
16+
- 'main'
17+
- '*-dev'
18+
paths:
19+
- '.github/workflows/image_310p.ubuntu.yml'
20+
- 'Dockerfile.310p'
21+
- 'vllm_ascend/**'
22+
- 'setup.py'
23+
- 'pyproject.toml'
24+
- 'requirements.txt'
25+
- 'cmake/**'
26+
- 'CMakeLists.txt'
27+
- 'csrc/**'
28+
push:
29+
# Publish image when tagging, the Dockerfile in tag will be build as tag image
30+
branches:
31+
- 'main'
32+
- '*-dev'
33+
tags:
34+
- 'v*'
35+
paths:
36+
- '.github/workflows/image_310p_ubuntu.yml'
37+
- 'Dockerfile.310p'
38+
- 'vllm_ascend/**'
39+
jobs:
40+
41+
build:
42+
name: vllm-ascend image build
43+
runs-on: ubuntu-latest
44+
45+
steps:
46+
- uses: actions/checkout@v4
47+
48+
- name: Print
49+
run: |
50+
lscpu
51+
52+
- name: Docker meta
53+
id: meta
54+
uses: docker/metadata-action@v5
55+
with:
56+
# TODO(yikun): add more hub image and a note on release policy for container image
57+
images: |
58+
quay.io/ascend/vllm-ascend
59+
# Note for test case
60+
# https://github.com/marketplace/actions/docker-metadata-action#typeref
61+
# 1. branch job pulish per main/*-dev branch commits
62+
# 2. main and dev pull_request is build only, so the tag pr-N is fine
63+
# 3. only pep440 matched tag will be published:
64+
# - v0.7.1 --> v0.7.1, latest
65+
# - pre/post/dev: v0.7.1rc1/v0.7.1rc1/v0.7.1rc1.dev1/v0.7.1.post1, no latest
66+
# which follow the rule from vLLM with prefix v
67+
# TODO(yikun): the post release might be considered as latest release
68+
tags: |
69+
type=ref,event=branch,suffix=-310p
70+
type=ref,event=pr,suffix=-310p
71+
type=pep440,pattern={{raw}},suffix=-310p
72+
73+
- name: Free up disk space
74+
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1
75+
with:
76+
tool-cache: true
77+
docker-images: false
78+
79+
- name: Build - Set up QEMU
80+
uses: docker/setup-qemu-action@v3
81+
82+
- name: Build - Set up Docker Buildx
83+
uses: docker/setup-buildx-action@v3
84+
85+
- name: Publish - Login to Quay Container Registry
86+
if: ${{ github.event_name == 'push' && github.repository_owner == 'vllm-project' }}
87+
uses: docker/login-action@v3
88+
with:
89+
registry: quay.io
90+
username: ${{ vars.QUAY_USERNAME }}
91+
password: ${{ secrets.QUAY_PASSWORD }}
92+
93+
- name: Build and push 310p
94+
uses: docker/build-push-action@v6
95+
with:
96+
platforms: >-
97+
${{
98+
github.event_name == 'push' && github.repository_owner == 'vllm-project' &&
99+
'linux/amd64,linux/arm64' ||
100+
'linux/amd64'
101+
}}
102+
# use the current repo path as the build context, ensure .git is contained
103+
context: .
104+
file: Dockerfile.310p
105+
# only trigger when tag, branch/main push
106+
push: ${{ github.event_name == 'push' && github.repository_owner == 'vllm-project' }}
107+
labels: ${{ steps.meta.outputs.labels }}
108+
tags: ${{ steps.meta.outputs.tags }}
109+
build-args: |
110+
PIP_INDEX_URL=https://pypi.org/simple

.github/workflows/image_openeuler.yml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,12 @@ on:
1919
- '.github/workflows/image_openeuler.yml'
2020
- 'Dockerfile.openEuler'
2121
- 'vllm_ascend/**'
22+
- 'setup.py'
23+
- 'pyproject.toml'
24+
- 'requirements.txt'
25+
- 'cmake/**'
26+
- 'CMakeLists.txt'
27+
- 'csrc/**'
2228
push:
2329
# Publish image when tagging, the Dockerfile in tag will be build as tag image
2430
branches:
@@ -88,7 +94,7 @@ jobs:
8894
username: ${{ vars.QUAY_USERNAME }}
8995
password: ${{ secrets.QUAY_PASSWORD }}
9096

91-
- name: Build and push
97+
- name: Build and push 910b
9298
uses: docker/build-push-action@v6
9399
with:
94100
platforms: >-

.github/workflows/image_ubuntu.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,12 @@ on:
1919
- '.github/workflows/image_ubuntu.yml'
2020
- 'Dockerfile'
2121
- 'vllm_ascend/**'
22+
- 'setup.py'
23+
- 'pyproject.toml'
24+
- 'requirements.txt'
25+
- 'cmake/**'
26+
- 'CMakeLists.txt'
27+
- 'csrc/**'
2228
push:
2329
# Publish image when tagging, the Dockerfile in tag will be build as tag image
2430
branches:
@@ -84,7 +90,7 @@ jobs:
8490
username: ${{ vars.QUAY_USERNAME }}
8591
password: ${{ secrets.QUAY_PASSWORD }}
8692

87-
- name: Build and push
93+
- name: Build and push 910b
8894
uses: docker/build-push-action@v6
8995
with:
9096
platforms: >-
@@ -95,6 +101,7 @@ jobs:
95101
}}
96102
# use the current repo path as the build context, ensure .git is contained
97103
context: .
104+
file: Dockerfile
98105
# only trigger when tag, branch/main push
99106
push: ${{ github.event_name == 'push' && github.repository_owner == 'vllm-project' }}
100107
labels: ${{ steps.meta.outputs.labels }}

.github/workflows/nightly_benchmarks.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,8 @@ jobs:
115115
VLLM_TARGET_DEVICE=empty pip install -e .
116116
117117
- name: Install vllm-project/vllm-ascend
118+
env:
119+
PIP_EXTRA_INDEX_URL: https://mirrors.huaweicloud.com/ascend/repos/pypi
118120
run: |
119121
pip install -e .
120122
pip install -r benchmarks/requirements-bench.txt
@@ -165,6 +167,8 @@ jobs:
165167
cp -r benchmarks/* /github/home/benchmarks/
166168
167169
- name: Run benchmark iteration
170+
env:
171+
PIP_EXTRA_INDEX_URL: https://mirrors.huaweicloud.com/ascend/repos/pypi
168172
if: github.event_name != 'pull_request'
169173
run: |
170174
while IFS= read -r line || [[ -n "$line" ]]; do

.github/workflows/vllm_ascend_doctest.yaml

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ jobs:
4646
# Each version should be tested
4747
fail-fast: false
4848
matrix:
49-
vllm_verison: [main, v0.7.3-dev, main-openeuler, v0.7.3-dev-openeuler]
49+
vllm_verison: [v0.9.1-dev, v0.9.1-dev-openeuler, main, main-openeuler]
5050
name: vLLM Ascend test
5151
runs-on: linux-arm64-npu-1
5252
container:
@@ -70,13 +70,13 @@ jobs:
7070
run: |
7171
sed -i 's|ports.ubuntu.com|mirrors.tuna.tsinghua.edu.cn|g' /etc/apt/sources.list
7272
apt-get update -y
73-
apt install git curl -y
73+
apt install -y gcc g++ libnuma-dev git curl jq
7474
7575
- name: Config OS mirrors - openEuler
7676
if: ${{ endsWith(matrix.vllm_verison, '-openeuler') }}
7777
run: |
7878
yum update -y
79-
yum install git curl -y
79+
yum install -y gcc g++ numactl-devel git curl jq
8080
8181
- name: Config pip mirrors
8282
run: |
@@ -88,11 +88,13 @@ jobs:
8888
- name: Run vllm-ascend/tests/e2e/run_doctests.sh
8989
run: |
9090
# PWD: /__w/vllm-ascend/vllm-ascend
91-
# Address old branch like v0.7.3:
92-
if [ ! -d /vllm-workspace/vllm-ascend/tests/e2e ]; then
93-
echo "Warning: the doctest path doesn't exists, copy now"
94-
cp -r tests/e2e /vllm-workspace/vllm-ascend/tests/
95-
fi
91+
echo "Replacing /vllm-workspace/vllm-ascend/tests/e2e ..."
92+
rm -rf /vllm-workspace/vllm-ascend/tests/e2e
93+
mkdir -p /vllm-workspace/vllm-ascend/tests
94+
cp -r tests/e2e /vllm-workspace/vllm-ascend/tests/
95+
96+
# TODO(yikun): Remove this after conf.py merged
97+
cp docs/source/conf.py /vllm-workspace/vllm-ascend/docs/source/
9698
9799
# Simulate container to enter directory
98100
cd /workspace

0 commit comments

Comments
 (0)