|
@@ -0,0 +1,107 @@
|
|
|
+name: build-wheels-linux
|
|
|
+
|
|
|
+on:
|
|
|
+ push:
|
|
|
+ branches:
|
|
|
+ - wheel
|
|
|
+ tags:
|
|
|
+ - '*'
|
|
|
+ workflow_dispatch:
|
|
|
+
|
|
|
+env:
|
|
|
+ SHERPA_NCNN_IS_IN_GITHUB_ACTIONS: 1
|
|
|
+
|
|
|
+concurrency:
|
|
|
+ group: build-wheels-linux-${{ github.ref }}
|
|
|
+ cancel-in-progress: true
|
|
|
+
|
|
|
+jobs:
|
|
|
+ build_wheels_linux:
|
|
|
+ name: ${{ matrix.python-version }}
|
|
|
+ runs-on: ${{ matrix.os }}
|
|
|
+ strategy:
|
|
|
+ fail-fast: false
|
|
|
+ matrix:
|
|
|
+ os: [ubuntu-latest]
|
|
|
+ python-version: ["cp37", "cp38", "cp39", "cp310", "cp311", "cp312"]
|
|
|
+
|
|
|
+ steps:
|
|
|
+ - uses: actions/checkout@v2
|
|
|
+
|
|
|
+ # see https://cibuildwheel.readthedocs.io/en/stable/changelog/
|
|
|
+ # for a list of versions
|
|
|
+ - name: Build wheels
|
|
|
+ uses: pypa/cibuildwheel@v2.15.0
|
|
|
+ env:
|
|
|
+ CIBW_BUILD: "${{ matrix.python-version}}-* "
|
|
|
+ CIBW_SKIP: "cp27-* cp35-* *-win32 pp* *-musllinux*"
|
|
|
+ CIBW_BUILD_VERBOSITY: 3
|
|
|
+
|
|
|
+ - name: Display wheels
|
|
|
+ shell: bash
|
|
|
+ run: |
|
|
|
+ ls -lh ./wheelhouse/
|
|
|
+
|
|
|
+ ls -lh ./wheelhouse/*.whl
|
|
|
+
|
|
|
+ - uses: actions/upload-artifact@v2
|
|
|
+ with:
|
|
|
+ path: ./wheelhouse/*.whl
|
|
|
+
|
|
|
+ - name: Publish to huggingface
|
|
|
+ if: matrix.python-version == 'cp38'
|
|
|
+ env:
|
|
|
+ HF_TOKEN: ${{ secrets.HF_TOKEN }}
|
|
|
+ uses: nick-fields/retry@v2
|
|
|
+ with:
|
|
|
+ max_attempts: 20
|
|
|
+ timeout_seconds: 200
|
|
|
+ shell: bash
|
|
|
+ command: |
|
|
|
+ git config --global user.email "csukuangfj@gmail.com"
|
|
|
+ git config --global user.name "Fangjun Kuang"
|
|
|
+
|
|
|
+ rm -rf huggingface
|
|
|
+ export GIT_LFS_SKIP_SMUDGE=1
|
|
|
+
|
|
|
+ git clone https://huggingface.co/csukuangfj/sherpa-ncnn-wheels huggingface
|
|
|
+ cd huggingface
|
|
|
+ git fetch
|
|
|
+ git pull
|
|
|
+ git merge -m "merge remote" --ff origin main
|
|
|
+
|
|
|
+ cp -v ../wheelhouse/*.whl .
|
|
|
+
|
|
|
+ git status
|
|
|
+ git add .
|
|
|
+ git commit -m "add more wheels"
|
|
|
+ git push https://csukuangfj:$HF_TOKEN@huggingface.co/csukuangfj/sherpa-ncnn-wheels main
|
|
|
+
|
|
|
+
|
|
|
+ - name: Publish wheels to PyPI
|
|
|
+ env:
|
|
|
+ TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
|
|
|
+ TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
|
|
|
+ run: |
|
|
|
+ python3 -m pip install --upgrade pip
|
|
|
+ python3 -m pip install wheel twine setuptools
|
|
|
+
|
|
|
+ twine upload ./wheelhouse/*.whl
|
|
|
+
|
|
|
+ - name: Build sdist
|
|
|
+ if: matrix.python-version == 'cp38'
|
|
|
+ shell: bash
|
|
|
+ run: |
|
|
|
+ python3 setup.py sdist
|
|
|
+ ls -lh dist/*
|
|
|
+
|
|
|
+ - name: Publish sdist to PyPI
|
|
|
+ if: matrix.python-version == 'cp38'
|
|
|
+ env:
|
|
|
+ TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
|
|
|
+ TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
|
|
|
+ run: |
|
|
|
+ python3 -m pip install --upgrade pip
|
|
|
+ python3 -m pip install wheel twine setuptools
|
|
|
+ twine upload dist/sherpa*.tar.gz
|
|
|
+
|