16
16
release :
17
17
# Retrieve tag and create release
18
18
name : Create Release
19
- runs-on : ubuntu-latest
19
+ runs-on : self-hosted
20
+ container :
21
+ image : rocm/pytorch:rocm6.2_ubuntu20.04_py3.9_pytorch_release_2.3.0
20
22
outputs :
21
23
upload_url : ${{ steps.create_release.outputs.upload_url }}
22
24
steps :
@@ -41,57 +43,39 @@ jobs:
41
43
42
44
wheel :
43
45
name : Build Wheel
44
- runs-on : ${{ matrix.os }}
46
+ runs-on : self-hosted
47
+ container :
48
+ image : rocm/pytorch:rocm6.2_ubuntu20.04_py3.9_pytorch_release_2.3.0
45
49
needs : release
46
50
47
51
strategy :
48
52
fail-fast : false
49
- matrix :
50
- os : ['ubuntu-20.04']
51
- python-version : ['3.8', '3.9', '3.10', '3.11', '3.12']
52
- pytorch-version : ['2.4.0'] # Must be the most recent version that meets requirements-cuda.txt.
53
- cuda-version : ['11.8', '12.1']
54
53
55
54
steps :
56
- - name : Checkout
57
- uses : actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1
58
-
59
- - name : Setup ccache
60
- uses : hendrikmuhs/ccache-action@ed74d11c0b343532753ecead8a951bb09bb34bc9 # v1.2.14
61
- with :
62
- create-symlink : true
63
- key : ${{ github.job }}-${{ matrix.python-version }}-${{ matrix.cuda-version }}
64
-
65
- - name : Set up Linux Env
66
- if : ${{ runner.os == 'Linux' }}
67
- run : |
68
- bash -x .github/workflows/scripts/env.sh
69
-
70
- - name : Set up Python
71
- uses : actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5.2.0
72
- with :
73
- python-version : ${{ matrix.python-version }}
74
-
75
- - name : Install CUDA ${{ matrix.cuda-version }}
55
+ - name : Prepare
76
56
run : |
77
- bash -x .github/workflows/scripts/cuda-install.sh ${{ matrix.cuda-version }} ${{ matrix.os }}
57
+ pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/rocm6.2
58
+ pip3 install -U triton
78
59
79
- - name : Install PyTorch ${{ matrix.pytorch-version }} with CUDA ${{ matrix.cuda-version }}
80
- run : |
81
- bash -x .github/workflows/scripts/pytorch-install.sh ${{ matrix.python-version }} ${{ matrix.pytorch-version }} ${{ matrix.cuda-version }}
60
+ - name : Checkout
61
+ uses : actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1
82
62
83
63
- name : Build wheel
84
64
shell : bash
85
65
env :
86
66
CMAKE_BUILD_TYPE : Release # do not compile with debug symbol to reduce wheel size
87
67
run : |
88
- bash -x .github/workflows/scripts/build.sh ${{ matrix.python-version }} ${{ matrix.cuda-version }}
68
+ bash -x .github/workflows/scripts/build.sh
89
69
wheel_name=$(find dist -name "*whl" -print0 | xargs -0 -n 1 basename)
90
70
asset_name=${wheel_name//"linux"/"manylinux1"}
71
+ gradlib_wheel_name=$(find gradlib/dist -name "*whl" -print0 | xargs -0 -n 1 basename)
72
+ gradlib_asset_name=${gradlib_wheel_name//"linux"/"manylinux1"}
91
73
echo "wheel_name=${wheel_name}" >> "$GITHUB_ENV"
92
74
echo "asset_name=${asset_name}" >> "$GITHUB_ENV"
75
+ echo "gradlib_wheel_name=${gradlib_wheel_name}" >> "$GITHUB_ENV"
76
+ echo "gradlib_asset_name=${gradlib_asset_name}" >> "$GITHUB_ENV"
93
77
94
- - name : Upload Release Asset
78
+ - name : Upload vllm Release Asset
95
79
uses : actions/upload-release-asset@e8f9f06c4b078e705bd2ea027f0926603fc9b4d5 # v1.0.2
96
80
env :
97
81
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
@@ -100,11 +84,13 @@ jobs:
100
84
asset_path : ./dist/${{ env.wheel_name }}
101
85
asset_name : ${{ env.asset_name }}
102
86
asset_content_type : application/*
87
+ - name : Upload gradlib Release Asset
88
+ uses : actions/upload-release-asset@e8f9f06c4b078e705bd2ea027f0926603fc9b4d5 # v1.0.2
89
+ env :
90
+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
91
+ with :
92
+ upload_url : ${{ needs.release.outputs.upload_url }}
93
+ asset_path : ./gradlib/dist/${{ env.gradlib_wheel_name }}
94
+ asset_name : ${{ env.gradlib_asset_name }}
95
+ asset_content_type : application/*
103
96
104
- # (Danielkinz): This last step will publish the .whl to pypi. Warning: untested
105
- # - name: Publish package
106
- # uses: pypa/gh-action-pypi-publish@release/v1.8
107
- # with:
108
- # repository-url: https://test.pypi.org/legacy/
109
- # password: ${{ secrets.PYPI_API_TOKEN }}
110
- # skip-existing: true
0 commit comments