-
Notifications
You must be signed in to change notification settings - Fork 283
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Build MacOS ARM64 Universal wheels (#161)
* Try MacOS ARM wheels * Only macos universal - try QEMU aarch64 build * Comment out QEMU arm64 builds * Re-order for consistency, clean
- Loading branch information
Showing
6 changed files
with
59 additions
and
78 deletions.
There are no files selected for viewing
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
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -20,33 +20,15 @@ jobs: | |
|
||
- name: Checkout code | ||
uses: actions/checkout@v2 | ||
with: | ||
fetch-depth: 0 | ||
# we need fetch-depth 0 so setuptools_scm can resolve tags | ||
|
||
- uses: actions/setup-python@v2 | ||
name: Install Python | ||
with: | ||
python-version: '3.8' | ||
|
||
- name: Test for secrets access | ||
id: check_secrets | ||
shell: bash | ||
run: | | ||
unset HAS_SECRET | ||
if [ -n "$SECRET" ]; then HAS_SECRET='true' ; fi | ||
echo ::set-output name=HAS_SECRET::${HAS_SECRET} | ||
env: | ||
SECRET: "${{ secrets.test_pypi_password }}" | ||
|
||
- name: Install cibuildwheel | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install wheel | ||
pip install cibuildwheel==1.8.0 | ||
- name: Lint source with flake8 | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install flake8 | ||
flake8 tests setup.py | ||
|
@@ -61,14 +43,18 @@ jobs: | |
pip install build | ||
python -m build --sdist --outdir dist . | ||
- name: Build wheels and test | ||
run: | | ||
python -m cibuildwheel --output-dir dist | ||
- name: Build ${{ matrix.os }} wheels and test | ||
uses: joerick/[email protected] | ||
with: | ||
output-dir: dist | ||
env: | ||
# build python 3.7 and 3.8 | ||
CIBW_BUILD: 'cp37-* cp38-* cp39-*' | ||
CIBW_SKIP: '*-manylinux_i686 *-win32' | ||
# we need boost | ||
# CIBW_ARCHS_MACOS: x86_64 arm64 universal2 | ||
CIBW_ARCHS_MACOS: x86_64 universal2 | ||
CIBW_TEST_SKIP: '*_arm64 *_universal2:arm64' | ||
CIBW_BUILD_VERBOSITY_LINUX: 0 | ||
CIBW_BUILD_VERBOSITY_MACOS: 0 | ||
CIBW_BUILD_VERBOSITY_WINDOWS: 0 | ||
|
@@ -89,12 +75,52 @@ jobs: | |
CIBW_TEST_REQUIRES: pytest | ||
CIBW_TEST_COMMAND: py.test -v {project}/tests -s | ||
|
||
# - name: Set up QEMU on ubuntu x86_64 | ||
# if: startsWith(matrix.os, 'ubuntu') | ||
# id: qemu | ||
# uses: docker/setup-qemu-action@v1 | ||
# with: | ||
# platforms: arm64 | ||
# QEMY is about 9x slower than ARM64 native builds sadly... | ||
# - name: Build wheels and test aarch64 | ||
# if: startsWith(matrix.os, 'ubuntu') | ||
# uses: joerick/[email protected] | ||
# with: | ||
# output-dir: dist | ||
# env: | ||
# CIBW_BUILD: 'cp37-* cp38-* cp39-*' | ||
# CIBW_ARCHS_LINUX: aarch64 | ||
# CIBW_MANYLINUX_AARCH64_IMAGE: manylinux2014 | ||
# CIBW_BUILD_VERBOSITY_LINUX: 0 | ||
# # we need boost | ||
# CIBW_BEFORE_ALL_LINUX: > | ||
# yum -y install epel-release | ||
# && yum -y install cmake3 | ||
# && rm -rf /usr/local/bin/cmake | ||
# && ln -s /usr/bin/cmake3 /usr/local/bin/cmake | ||
# && cmake --version | ||
# && uname -a | ||
# CIBW_BEFORE_BUILD_LINUX: > | ||
# python -m pip install --upgrade pip | ||
# CIBW_TEST_REQUIRES: pytest | ||
# CIBW_TEST_COMMAND: py.test -v {project}/tests -s | ||
|
||
- name: Upload wheels | ||
uses: actions/upload-artifact@v2 | ||
with: | ||
name: wheels | ||
path: ./dist | ||
|
||
- name: Test for secrets access | ||
id: check_secrets | ||
shell: bash | ||
run: | | ||
unset HAS_SECRET | ||
if [ -n "$SECRET" ]; then HAS_SECRET='true' ; fi | ||
echo ::set-output name=HAS_SECRET::${HAS_SECRET} | ||
env: | ||
SECRET: "${{ secrets.test_pypi_password }}" | ||
|
||
- name: Install twine | ||
run: pip install twine | ||
|
||
|
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
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
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