Update broken links #105
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: Build and test wheels | |
on: | |
push: | |
branches: [master] | |
tags: | |
- '*' | |
pull_request: | |
branches: [master] | |
workflow_dispatch: | |
jobs: | |
wheels: | |
name: Build wheels on ${{ matrix.os }} for ${{ matrix.arch }} | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
include: | |
- os: windows-2019 | |
arch: AMD64 | |
cmake_generator: "Visual Studio 16 2019" | |
cmake_generator_platform: "x64" | |
- os: windows-2019 | |
arch: x86 | |
cmake_generator: "Visual Studio 16 2019" | |
cmake_generator_platform: "Win32" | |
- os: ubuntu-20.04 | |
arch: x86_64 | |
- os: ubuntu-20.04 | |
arch: aarch64 | |
- os: ubuntu-20.04 | |
arch: i686 | |
- os: macos-11 | |
arch: x86_64 | |
- os: macos-13-xlarge | |
arch: arm64 | |
steps: | |
- name: Disable autocrlf | |
run: | | |
git config --global core.autocrlf false | |
- uses: actions/checkout@v3 | |
# Used to host cibuildwheel | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: '3.10' | |
- uses: docker/setup-qemu-action@v2 | |
if: ${{ matrix.arch == 'aarch64' }} | |
name: Set up QEMU | |
- name: Install cibuildwheel | |
run: python -m pip install cibuildwheel | |
- name: Build wheels | |
env: | |
CIBW_ENVIRONMENT_WINDOWS: > | |
CMAKE_GENERATOR="${{ matrix.cmake_generator }}" | |
CMAKE_GENERATOR_PLATFORM="${{ matrix.cmake_generator_platform }}" | |
CMAKE_PREFIX_PATH="C:/Program Files/Mpark.Variant/" | |
CMAKE_PREFIX_PATH="$CMAKE_PREFIX_PATH;C:/Program Files (x86)/Mpark.Variant/" | |
CMAKE_PREFIX_PATH="$CMAKE_PREFIX_PATH;C:/Program Files/layered-file-protocols/" | |
CMAKE_PREFIX_PATH="$CMAKE_PREFIX_PATH;C:/Program Files (x86)/layered-file-protocols/" | |
CIBW_ARCHS: ${{ matrix.arch }} | |
# musllinux arch skip: unlikely someone wants to run dlisio on alpine on non-standard architecture | |
# musllinux cp37 and cp38 skip: latest available numpy doesn't provide musslinux wheels, so it is unlikely useful | |
# macosx 38 skip: cibuildwheel can't test it | |
CIBW_SKIP: pp* *-musllinux_i686 *-musllinux_aarch64 cp37*-musllinux* cp38*-musllinux* cp38*-macosx_*:arm64 cp36-* | |
run: | | |
python -m cibuildwheel --output-dir wheelhouse python/ | |
- uses: actions/upload-artifact@v3 | |
with: | |
path: ./wheelhouse/*.whl | |
publish: | |
needs: wheels | |
name: Publish wheels to PyPI | |
runs-on: ubuntu-latest | |
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags') | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/download-artifact@v3 | |
- name: Publish wheels to PyPI | |
uses: pypa/gh-action-pypi-publish@release/v1 | |
with: | |
user: __token__ | |
password: ${{ secrets.PYPI_API_TOKEN }} | |
packages_dir: artifact |