diff --git a/.github/workflows/build-linux.yml b/.github/workflows/build-linux.yml index e380bc1..1332518 100644 --- a/.github/workflows/build-linux.yml +++ b/.github/workflows/build-linux.yml @@ -74,3 +74,52 @@ jobs: with: name: wheels path: ./wheelhouse + + build_wheels_aarch64: + name: Build wheels on ${{ matrix.os }}, ${{ matrix.arch }} + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-18.04] + arch: [aarch64] + + steps: + - uses: actions/checkout@v2 + + - uses: actions/setup-python@v1 + name: Install Python 3.8 + with: + python-version: "3.8" + + - name: Install cibuildwheel + run: | + python -m pip install cibuildwheel~=1.8.0 + + - uses: docker/setup-qemu-action@v1 + name: Set up QEMU + + - name: Checkout submodules + shell: bash + run: | + git submodule sync --recursive + git submodule update --init --force --recursive --depth=1 + + - name: Build wheel + if: contains(github.ref, 'tags/') + run: | + python -m cibuildwheel --output-dir wheelhouse + env: + CIBW_BUILD: cp36-* cp37-* cp38-* cp39-* + CIBW_ARCHS_LINUX: ${{ matrix.arch }} + CIBW_BEFORE_BUILD: python -m pip install --upgrade pip + && python -m pip install tox + CIBW_TEST_REQUIRES: tox + CIBW_TEST_COMMAND: cd /project + && python -m pip install -r requirements-dev.txt + && /opt/python/*/bin/tox -e py + + - uses: actions/upload-artifact@v1 + if: contains(github.ref, 'tags/') + with: + name: wheels + path: ./wheelhouse