mirror of https://github.com/coqui-ai/TTS.git
95 lines
2.5 KiB
YAML
95 lines
2.5 KiB
YAML
name: Publish Python 🐍 distributions 📦 to PyPI
|
|
on:
|
|
release:
|
|
types: [published]
|
|
defaults:
|
|
run:
|
|
shell:
|
|
bash
|
|
jobs:
|
|
build-sdist:
|
|
runs-on: ubuntu-20.04
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Verify tag matches version
|
|
run: |
|
|
set -ex
|
|
version=$(cat TTS/VERSION)
|
|
tag="${GITHUB_REF/refs\/tags\/}"
|
|
if [[ "v$version" != "$tag" ]]; then
|
|
exit 1
|
|
fi
|
|
- uses: actions/setup-python@v2
|
|
with:
|
|
python-version: 3.9
|
|
- run: |
|
|
python -m pip install -U pip setuptools wheel build
|
|
- run: |
|
|
python -m build
|
|
- run: |
|
|
pip install dist/*.tar.gz
|
|
- uses: actions/upload-artifact@v2
|
|
with:
|
|
name: sdist
|
|
path: dist/*.tar.gz
|
|
build-wheels:
|
|
runs-on: ubuntu-20.04
|
|
strategy:
|
|
matrix:
|
|
python-version: ["3.9", "3.10", "3.11"]
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions/setup-python@v2
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
- name: Install pip requirements
|
|
run: |
|
|
python -m pip install -U pip setuptools wheel build
|
|
python -m pip install -r requirements.txt
|
|
- name: Setup and install manylinux1_x86_64 wheel
|
|
run: |
|
|
python setup.py bdist_wheel --plat-name=manylinux1_x86_64
|
|
python -m pip install dist/*-manylinux*.whl
|
|
- uses: actions/upload-artifact@v2
|
|
with:
|
|
name: wheel-${{ matrix.python-version }}
|
|
path: dist/*-manylinux*.whl
|
|
publish-artifacts:
|
|
runs-on: ubuntu-20.04
|
|
needs: [build-sdist, build-wheels]
|
|
steps:
|
|
- run: |
|
|
mkdir dist
|
|
- uses: actions/download-artifact@v2
|
|
with:
|
|
name: "sdist"
|
|
path: "dist/"
|
|
- uses: actions/download-artifact@v2
|
|
with:
|
|
name: "wheel-3.9"
|
|
path: "dist/"
|
|
- uses: actions/download-artifact@v2
|
|
with:
|
|
name: "wheel-3.10"
|
|
path: "dist/"
|
|
- uses: actions/download-artifact@v2
|
|
with:
|
|
name: "wheel-3.11"
|
|
path: "dist/"
|
|
- run: |
|
|
ls -lh dist/
|
|
- name: Setup PyPI config
|
|
run: |
|
|
cat << EOF > ~/.pypirc
|
|
[pypi]
|
|
username=__token__
|
|
password=${{ secrets.PYPI_TOKEN }}
|
|
EOF
|
|
- uses: actions/setup-python@v2
|
|
with:
|
|
python-version: 3.9
|
|
- run: |
|
|
python -m pip install twine
|
|
- run: |
|
|
twine upload --repository pypi dist/*
|