mirror of
https://github.com/hpcaitech/ColossalAI.git
synced 2026-01-15 23:23:11 +00:00
88 lines
2.7 KiB
YAML
88 lines
2.7 KiB
YAML
name: Release bdist wheel
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
torch_version:
|
|
type: string
|
|
description: torch version, separated by comma
|
|
required: true
|
|
default: "all"
|
|
cuda_version:
|
|
type: string
|
|
description: cuda version, separated by comma
|
|
required: true
|
|
github_ref:
|
|
type: string
|
|
description: Branch or Tag
|
|
default: 'main'
|
|
required: true
|
|
|
|
jobs:
|
|
matrix_preparation:
|
|
name: Prepare Container List
|
|
runs-on: ubuntu-latest
|
|
outputs:
|
|
matrix: ${{ steps.set-matrix.outputs.matrix }}
|
|
steps:
|
|
- id: set-matrix
|
|
env:
|
|
TORCH_VERSIONS: ${{ inputs.torch_version }}
|
|
CUDA_VERSIONS: ${{ inputs.cuda_version }}
|
|
run: |
|
|
echo $TORCH_VERSIONS
|
|
echo $CUDA_VERSIONS
|
|
IFS=','
|
|
DOCKER_IMAGE=()
|
|
|
|
for cv in $CUDA_VERSIONS
|
|
do
|
|
DOCKER_IMAGE+=("\"hpcaitech/cuda-conda:${cv}\"")
|
|
done
|
|
|
|
container=$( IFS=',' ; echo "${DOCKER_IMAGE[*]}" )
|
|
container="[${container}]"
|
|
echo "$container"
|
|
echo "::set-output name=matrix::{\"container\":$(echo "$container")}"
|
|
|
|
build:
|
|
name: Release bdist wheels
|
|
needs: matrix_preparation
|
|
if: github.repository == 'hpcaitech/ColossalAI' && contains(fromJson('["FrankLeeeee", "ver217", "feifeibear", "kurisusnowdeng"]'), github.actor)
|
|
runs-on: [self-hosted, gpu]
|
|
strategy:
|
|
fail-fast: false
|
|
matrix: ${{fromJson(needs.matrix_preparation.outputs.matrix)}}
|
|
container:
|
|
image: ${{ matrix.container }}
|
|
options: --gpus all --rm
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
with:
|
|
fetch-depth: 0
|
|
# cub is for cuda 10.2
|
|
- name: Copy scripts and checkout
|
|
run: |
|
|
cp -r ./.github/workflows/scripts/* ./
|
|
ln -s /github/home/pip_wheels ./pip_wheels
|
|
git config --global --add safe.directory /__w/ColossalAI/ColossalAI
|
|
git checkout $git_ref
|
|
wget https://github.com/NVIDIA/cub/archive/refs/tags/1.8.0.zip
|
|
unzip 1.8.0.zip
|
|
env:
|
|
git_ref: ${{ github.event.inputs.github_ref }}
|
|
- name: Build bdist wheel
|
|
run: |
|
|
pip install beautifulsoup4 requests packaging
|
|
python ./build_colossalai_wheel.py --torch_version $TORCH_VERSIONS
|
|
env:
|
|
TORCH_VERSIONS: ${{ inputs.torch_version }}
|
|
- name: 🚀 Deploy
|
|
uses: garygrossgarten/github-action-scp@release
|
|
with:
|
|
local: all_dist
|
|
remote: ${{ secrets.PRIVATE_PYPI_DIR }}
|
|
host: ${{ secrets.PRIVATE_PYPI_HOST }}
|
|
username: ${{ secrets.PRIVATE_PYPI_USER }}
|
|
password: ${{ secrets.PRIVATE_PYPI_PASSWD }}
|