pip packaging linux #27
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: pip packaging linux | |
on: | |
release: | |
types: [published] | |
jobs: | |
build: | |
name: build pip wheel | |
runs-on: ubuntu-latest | |
# cf. https://github.com/GUDHI/gudhi-deploy/blob/main/Dockerfile_for_pip | |
container: gudhi/pip_for_gudhi:2023.12.01 | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: true | |
- name: Build wheel for Python 3.8 | |
run: | | |
mkdir build_38 | |
cd build_38 | |
cmake -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=$PYTHON38/bin/python .. | |
cd src/python | |
$PYTHON38/bin/python -m build -n -w | |
auditwheel repair dist/*.whl | |
- name: Install and test wheel for Python 3.8 | |
run: | | |
$PYTHON38/bin/python -m pip install --user pytest build_38/src/python/dist/*.whl | |
$PYTHON38/bin/python -m pip install numpy --upgrade | |
$PYTHON38/bin/python -c "import gudhi; print(gudhi.__version__)" | |
$PYTHON38/bin/python -m pytest -v src/python/test/test_alpha_complex.py | |
$PYTHON38/bin/python -m pytest -v src/python/test/test_bottleneck_distance.py | |
$PYTHON38/bin/python -m pytest -v src/python/test/test_cubical_complex.py | |
$PYTHON38/bin/python -m pytest -v src/python/test/test_rips_complex.py | |
- name: Build wheel for Python 3.9 | |
run: | | |
mkdir build_39 | |
cd build_39 | |
cmake -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=$PYTHON39/bin/python .. | |
cd src/python | |
$PYTHON39/bin/python -m build -n -w | |
auditwheel repair dist/*.whl | |
- name: Install and test wheel for Python 3.9 | |
run: | | |
$PYTHON39/bin/python -m pip install --user pytest build_39/src/python/dist/*.whl | |
$PYTHON39/bin/python -m pip install numpy --upgrade | |
$PYTHON39/bin/python -c "import gudhi; print(gudhi.__version__)" | |
$PYTHON39/bin/python -m pytest -v src/python/test/test_alpha_complex.py | |
$PYTHON39/bin/python -m pytest -v src/python/test/test_bottleneck_distance.py | |
$PYTHON39/bin/python -m pytest -v src/python/test/test_cubical_complex.py | |
$PYTHON39/bin/python -m pytest -v src/python/test/test_rips_complex.py | |
- name: Build wheel for Python 3.10 | |
run: | | |
mkdir build_310 | |
cd build_310 | |
cmake -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=$PYTHON310/bin/python .. | |
cd src/python | |
$PYTHON310/bin/python -m build -n -w | |
auditwheel repair dist/*.whl | |
- name: Install and test wheel for Python 3.10 | |
run: | | |
$PYTHON310/bin/python -m pip install --user pytest build_310/src/python/dist/*.whl | |
$PYTHON310/bin/python -m pip install numpy --upgrade | |
$PYTHON310/bin/python -c "import gudhi; print(gudhi.__version__)" | |
$PYTHON310/bin/python -m pytest -v src/python/test/test_alpha_complex.py | |
$PYTHON310/bin/python -m pytest -v src/python/test/test_bottleneck_distance.py | |
$PYTHON310/bin/python -m pytest -v src/python/test/test_cubical_complex.py | |
$PYTHON310/bin/python -m pytest -v src/python/test/test_rips_complex.py | |
- name: Build wheel for Python 3.11 | |
run: | | |
mkdir build_311 | |
cd build_311 | |
cmake -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=$PYTHON311/bin/python .. | |
cd src/python | |
$PYTHON311/bin/python -m build -n -w | |
auditwheel repair dist/*.whl | |
- name: Install and test wheel for Python 3.11 | |
run: | | |
$PYTHON311/bin/python -m pip install --user pytest build_311/src/python/dist/*.whl | |
$PYTHON311/bin/python -m pip install numpy --upgrade | |
$PYTHON311/bin/python -c "import gudhi; print(gudhi.__version__)" | |
$PYTHON311/bin/python -m pytest -v src/python/test/test_alpha_complex.py | |
$PYTHON311/bin/python -m pytest -v src/python/test/test_bottleneck_distance.py | |
$PYTHON311/bin/python -m pytest -v src/python/test/test_cubical_complex.py | |
$PYTHON311/bin/python -m pytest -v src/python/test/test_rips_complex.py | |
- name: Build wheel for Python 3.12 | |
run: | | |
mkdir build_312 | |
cd build_312 | |
cmake -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=$PYTHON312/bin/python .. | |
cd src/python | |
$PYTHON312/bin/python -m build -n -w | |
auditwheel repair dist/*.whl | |
- name: Install and test wheel for Python 3.12 | |
run: | | |
$PYTHON312/bin/python -m pip install --user pytest build_312/src/python/dist/*.whl | |
$PYTHON312/bin/python -m pip install numpy --upgrade | |
$PYTHON312/bin/python -c "import gudhi; print(gudhi.__version__)" | |
$PYTHON312/bin/python -m pytest -v src/python/test/test_alpha_complex.py | |
$PYTHON312/bin/python -m pytest -v src/python/test/test_bottleneck_distance.py | |
$PYTHON312/bin/python -m pytest -v src/python/test/test_cubical_complex.py | |
$PYTHON312/bin/python -m pytest -v src/python/test/test_rips_complex.py | |
- name: Publish on PyPi | |
env: | |
TWINE_USERNAME: __token__ | |
TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} | |
run: | | |
$PYTHON38/bin/python -m twine upload build_38/src/python/wheelhouse/*.whl | |
$PYTHON38/bin/python -m twine upload build_39/src/python/wheelhouse/*.whl | |
$PYTHON38/bin/python -m twine upload build_310/src/python/wheelhouse/*.whl | |
$PYTHON38/bin/python -m twine upload build_311/src/python/wheelhouse/*.whl | |
$PYTHON38/bin/python -m twine upload build_312/src/python/wheelhouse/*.whl |