diff --git a/.travis.yml b/.travis.yml index 7a2a263..b0ef6ca 100644 --- a/.travis.yml +++ b/.travis.yml @@ -28,6 +28,27 @@ jobs: # Exclude the default Python 3.5 build - python: 3.5 include: + - stage: Build and test wheel + os: linux + arch: arm64-graviton2 + dist: focal + virt: vm + group: edge + env: + - MB_PYTHON_VERSION=3.7 + - PLAT=aarch64 + - NP_BUILD_DEP=numpy==1.19.1 + - CYTHON_BUILD_DEP="Cython" + - DOCKER_IMAGE=quay.io/pypa/manylinux2014_${PLAT} + script: + - echo "This stage will just build AArch64 wheel" + workspaces: + create: + name: ws1 + paths: + - wheelhouse + after_success: + - echo "This stage will not upload aarch64 wheel" - os: linux env: - MB_PYTHON_VERSION=3.6 @@ -88,6 +109,22 @@ jobs: - CYTHON_BUILD_DEP="Cython" - MB_PYTHON_OSX_VER=10.9 + - stage: Test wheel + arch: arm64-graviton2 + dist: focal + virt: vm + group: edge + env: + - MB_PYTHON_VERSION=3.7 + - PLAT=aarch64 + - NP_TEST_DEP=numpy==1.19.1 + - CYTHON_BUILD_DEP="Cython" + - DOCKER_TEST_IMAGE=multibuild/xenial_arm64v8 + workspaces: + use: ws1 + install: + - echo "This stage will test and upload the AArch64 wheel" + before_install: - if [ "$TRAVIS_BRANCH" == "master" ]; then CONTAINER="pre-release"; diff --git a/config.sh b/config.sh index e7f6da1..f8cb486 100644 --- a/config.sh +++ b/config.sh @@ -63,7 +63,7 @@ function build_osx_wheel { function run_tests { # Runs tests on installed distribution from an empty directory # OSX tests seem to time out pretty often - if [ -z "$IS_OSX" ]; then + if [[ -z "$IS_OSX" && `uname -m` != 'aarch64' ]]; then local testmode="full" else local testmode="fast" @@ -71,7 +71,11 @@ function run_tests { # Check bundled license file python ../check_installed_package.py # Run tests - python ../run_scipy_tests.py $testmode -- -n2 -rfEX + if [[ -z "$IS_OSX" && `uname -m` != 'aarch64' ]]; then + python ../run_scipy_tests.py $testmode -- -n2 -rfEX + else + python ../run_scipy_tests.py $testmode -- -n8 -rfEX + fi # Show BLAS / LAPACK used python -c 'import scipy; scipy.show_config()' }