Publish source code to PyPI.

This commit is contained in:
Fangjun Kuang 2021-08-18 21:53:15 +08:00
parent 9673401552
commit 60b35c0ed8
3 changed files with 14 additions and 84 deletions

View File

@ -20,17 +20,12 @@ on:
push: push:
tags: tags:
- '*' - '*'
branches:
- torch-1.7.1
jobs: jobs:
pypi: pypi:
runs-on: ${{ matrix.os }} runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
os: [ubuntu-18.04, macos-10.15]
cuda: ["10.1"]
torch: ["1.7.1"]
python-version: [3.6, 3.7, 3.8]
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
with: with:
@ -39,83 +34,23 @@ jobs:
- name: Setup Python - name: Setup Python
uses: actions/setup-python@v2 uses: actions/setup-python@v2
with: with:
python-version: ${{ matrix.python-version }} python-version: 3.6
- name: Install GCC 7 - name: Install Python dependencies
if: startsWith(matrix.os, 'ubuntu')
run: |
sudo apt-get install -y gcc-7 g++-7
echo "CC=/usr/bin/gcc-7" >> $GITHUB_ENV
echo "CXX=/usr/bin/g++-7" >> $GITHUB_ENV
- name: Install CUDA Toolkit ${{ matrix.cuda }}
if: startsWith(matrix.os, 'ubuntu')
shell: bash
env:
cuda: ${{ matrix.cuda }}
run: |
source ./scripts/github_actions/install_cuda.sh
echo "CUDA_HOME=${CUDA_HOME}" >> $GITHUB_ENV
echo "${CUDA_HOME}/bin" >> $GITHUB_PATH
echo "LD_LIBRARY_PATH=${CUDA_HOME}/lib:${CUDA_HOME}/lib64:${LD_LIBRARY_PATH}" >> $GITHUB_ENV
- name: Display NVCC version
if: startsWith(matrix.os, 'ubuntu')
run: |
which nvcc
nvcc --version
- name: Install PyTorch ${{ matrix.torch }}
if: startsWith(matrix.os, 'ubuntu')
env:
cuda: ${{ matrix.cuda }}
torch: ${{ matrix.torch }}
shell: bash shell: bash
run: | run: |
python3 -m pip install --upgrade pip python3 -m pip install --upgrade pip
python3 -m pip install wheel twine typing_extensions python3 -m pip install wheel twine setuptools
python3 -m pip install bs4 requests tqdm
./scripts/github_actions/install_torch.sh - name: Build
python3 -c "import torch; print('torch version:', torch.__version__)"
- name: Install PyTorch ${{ matrix.torch }}
if: startsWith(matrix.os, 'macos')
shell: bash shell: bash
run: | run: |
python3 -m pip install -qq --upgrade pip python3 setup.py sdist
python3 -m pip install -qq wheel twine typing_extensions ls -l dist/*
python3 -m pip install -qq torch==${{ matrix.torch }}
python3 -c "import torch; print('torch version:', torch.__version__)"
- name: Download cudnn 8.0
if: startsWith(matrix.os, 'ubuntu')
env:
cuda: ${{ matrix.cuda }}
run: |
./scripts/github_actions/install_cudnn.sh
- name: Build pip packages
shell: bash
env:
KALDIFEAT_IS_FOR_PYPI: 1
run: |
tag=$(python3 -c "import sys; print(''.join(sys.version[:3].split('.')))")
export KALDIFEAT_MAKE_ARGS="-j2"
python3 setup.py bdist_wheel --python-tag=py${tag}
ls -lh dist/
- name: Publish wheels to PyPI - name: Publish wheels to PyPI
env: env:
TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }} TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
run: | run: |
twine upload dist/kaldifeat-*.whl twine upload dist/kaldifeat-*.tar.gz
- name: Upload Wheel
uses: actions/upload-artifact@v2
with:
name: torch-${{ matrix.torch }}-python-${{ matrix.python-version }}-${{ matrix.os }}
path: dist/*.whl

View File

@ -4,7 +4,7 @@ cmake_minimum_required(VERSION 3.8 FATAL_ERROR)
project(kaldifeat) project(kaldifeat)
set(kaldifeat_VERSION "1.5") set(kaldifeat_VERSION "1.5.2.dev")
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib") set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib")
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib") set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib")

View File

@ -210,15 +210,10 @@ for more examples.
## From PyPi with pip ## From PyPi with pip
If you install `kaldifeat` using `pip`, it will also install You need to install PyTorch and CMake first.
PyTorch 1.8.1. If this is not what you want (i.e, you have installed a
different version of PyTorch and you don't want to replace it
with PyTorch 1.8.1), please add an option `--no-dependencies` to
`pip install`.
```bash ```bash
pip install kaldifeat # also installs torch 1.8.1 pip install -v kaldilm
pip install --no-dependencies kaldifeat # will NOT install torch 1.8.1
``` ```
## From source ## From source
@ -226,7 +221,7 @@ pip install --no-dependencies kaldifeat # will NOT install torch 1.8.1
The following are the commands to compile `kaldifeat` from source. The following are the commands to compile `kaldifeat` from source.
We assume that you have installed `cmake` and PyTorch. We assume that you have installed `cmake` and PyTorch.
cmake 3.11 is known to work. Other cmake versions may also work. cmake 3.11 is known to work. Other cmake versions may also work.
PyTorch 1.8.1 is known to work. Other PyTorch versions may also work. PyTorch 1.7.1 and 1.8.1 are known to work. Other PyTorch versions may also work.
```bash ```bash
mkdir /some/path mkdir /some/path