blob: be08ac79574c30e923f9581e6d54a3e170053073 [file] [log] [blame]
name: Build wheels
on:
workflow_dispatch:
inputs:
os:
description: OS
required: true
default: ubuntu-20.04
python:
description: Python
required: true
default: 3.9
manylinux:
description: Manylinux
required: true
default: manylinux2014
jobs:
build_wheels:
name: Build compat:${{ github.event.inputs.manylinux }}, python:${{ github.event.inputs.python }}, os:${{ github.event.inputs.os }}
runs-on: ${{ github.event.inputs.os }}
steps:
- uses: actions/checkout@v2
with:
submodules: true
- name: Cache pip
uses: actions/cache@v2
with:
key: cache--${{ github.event.inputs.os }}--${{ github.event.inputs.python }}--${{ hashFiles('./requirements.txt') }}
path: ~/.cache/pip
- name: Setup python
uses: actions/setup-python@v2
with:
python-version: ${{ github.event.inputs.python }}
- name: Update pip
run: python -m pip install -U pip wheel setuptools
- name: Install requirements
run: python -m pip install -Ur requirements.txt
- name: Prepare for compilation
run: make prepare
- name: Build wheels
run: python -m cibuildwheel --output-dir wheelhouse
env:
CIBW_SKIP: "cp27-* pp27-*" # skip Python 2.7 wheels
CIBW_MANYLINUX_X86_64_IMAGE: ${{ github.event.inputs.manylinux }}
CIBW_MANYLINUX_I686_IMAGE: ${{ github.event.inputs.manylinux }}
- name: Store artifacts
uses: actions/upload-artifact@v2
with:
name: Wheelhouse
path: ./wheelhouse/*.whl