diff options
author | mattip <matti.picus@gmail.com> | 2019-07-05 11:05:08 -0700 |
---|---|---|
committer | mattip <matti.picus@gmail.com> | 2019-07-09 19:04:38 -0500 |
commit | 3c2e2703fdbc93fa73c2fb8cd4bedfdf2b7223c6 (patch) | |
tree | 24f0769896b9ba9b4c7e4f538fc8cab6c098c74b /azure-pipelines.yml | |
parent | 259b6e35622ae84def1399214ca2e6643f433fad (diff) | |
download | numpy-3c2e2703fdbc93fa73c2fb8cd4bedfdf2b7223c6.tar.gz |
ENH, BUILD: refactor all OpenBLAS downloads into a single, testable file
Diffstat (limited to 'azure-pipelines.yml')
-rw-r--r-- | azure-pipelines.yml | 40 |
1 files changed, 12 insertions, 28 deletions
diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 9e9001611..86aed8dab 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -20,21 +20,17 @@ jobs: docker pull i386/ubuntu:bionic docker run -v $(pwd):/numpy i386/ubuntu:bionic /bin/bash -c "cd numpy && \ apt-get -y update && \ - apt-get -y install python3.6-dev python3-pip locales && \ + apt-get -y install python3.6-dev python3-pip locales python3-certifi && \ locale-gen fr_FR && update-locale && \ pip3 install setuptools nose cython==0.29.0 pytest pytz pickle5 && \ apt-get -y install gfortran-5 wget && \ - cd .. && \ - mkdir openblas && cd openblas && \ - wget https://3f23b170c54c2533c070-1c8a9b3114517dc5fe17b7c3f8c63a43.ssl.cf2.rackcdn.com/openblas-v0.3.5-274-g6a8b4269-manylinux1_i686.tar.gz && \ - tar zxvf openblas-v0.3.5-274-g6a8b4269-manylinux1_i686.tar.gz && \ - cp -r ./usr/local/lib/* /usr/lib && \ - cp ./usr/local/include/* /usr/include && \ - cd ../numpy && \ + target=\$(python3 tools/openblas_support.py) && \ + cp -r \$target/usr/local/lib/* /usr/lib && \ + cp \$target/usr/local/include/* /usr/include && \ python3 -m pip install . && \ F77=gfortran-5 F90=gfortran-5 \ CFLAGS='-UNDEBUG -std=c99' python3 runtests.py -n --mode=full -- -rsx --junitxml=junit/test-results.xml && \ - cd ../openblas && python3 -c \"$(TEST_GET_CONFIG)\"" + cd .. && python3 -c \"$(TEST_GET_CONFIG)\"" displayName: 'Run 32-bit Ubuntu Docker Build / Tests' - task: PublishTestResults@2 condition: succeededOrFailed() @@ -83,11 +79,10 @@ jobs: # matches our MacOS wheel builds -- currently based # primarily on file size / name details - script: | - wget "https://3f23b170c54c2533c070-1c8a9b3114517dc5fe17b7c3f8c63a43.ssl.cf2.rackcdn.com/openblas-v0.3.5-274-g6a8b4269-macosx_10_9_x86_64-gf_1becaaa.tar.gz" - tar -zxvf openblas-v0.3.5-274-g6a8b4269-macosx_10_9_x86_64-gf_1becaaa.tar.gz + target=$(python tools/openblas_support.py) # manually link to appropriate system paths - cp ./usr/local/lib/* /usr/local/lib/ - cp ./usr/local/include/* /usr/local/include/ + cp $target/usr/local/lib/* /usr/local/lib/ + cp $target/usr/local/include/* /usr/local/include/ displayName: 'install pre-built openblas' - script: python -m pip install --upgrade pip setuptools wheel displayName: 'Install tools' @@ -124,11 +119,6 @@ jobs: - job: Windows pool: vmImage: 'VS2017-Win2016' - variables: - # openblas URLs from numpy-wheels - # appveyor / Windows config - OPENBLAS_32: "https://3f23b170c54c2533c070-1c8a9b3114517dc5fe17b7c3f8c63a43.ssl.cf2.rackcdn.com/openblas-v0.3.5-274-g6a8b4269-win32-gcc_7_1_0.zip" - OPENBLAS_64: "https://3f23b170c54c2533c070-1c8a9b3114517dc5fe17b7c3f8c63a43.ssl.cf2.rackcdn.com/openblas-v0.3.5-274-g6a8b4269-win_amd64-gcc_7_1_0.zip" strategy: maxParallel: 6 matrix: @@ -136,33 +126,28 @@ jobs: PYTHON_VERSION: '3.6' PYTHON_ARCH: 'x86' TEST_MODE: fast - OPENBLAS: $(OPENBLAS_32) BITS: 32 Python37-32bit-fast: PYTHON_VERSION: '3.7' PYTHON_ARCH: 'x86' TEST_MODE: fast - OPENBLAS: $(OPENBLAS_32) BITS: 32 Python35-64bit-full: PYTHON_VERSION: '3.5' PYTHON_ARCH: 'x64' TEST_MODE: full - OPENBLAS: $(OPENBLAS_64) BITS: 64 Python36-64bit-full: PYTHON_VERSION: '3.6' PYTHON_ARCH: 'x64' TEST_MODE: full INSTALL_PICKLE5: 1 - OPENBLAS: $(OPENBLAS_64) BITS: 64 Python37-64bit-full: PYTHON_VERSION: '3.7' PYTHON_ARCH: 'x64' TEST_MODE: full INSTALL_PICKLE5: 1 - OPENBLAS: $(OPENBLAS_64) BITS: 64 steps: - task: UsePythonVersion@0 @@ -176,17 +161,16 @@ jobs: displayName: 'Install dependencies; some are optional to avoid test skips' - script: if [%INSTALL_PICKLE5%]==[1] python -m pip install pickle5 displayName: 'Install optional pickle5 backport (only for python3.6 and 3.7)' + - powershell: | - $wc = New-Object net.webclient - $wc.Downloadfile("$(OPENBLAS)", "openblas.zip") - $tmpdir = New-TemporaryFile | %{ rm $_; mkdir $_ } - Expand-Archive "openblas.zip" $tmpdir $pyversion = python -c "from __future__ import print_function; import sys; print(sys.version.split()[0])" Write-Host "Python Version: $pyversion" $target = "C:\\hostedtoolcache\\windows\\Python\\$pyversion\\$(PYTHON_ARCH)\\lib\\openblas.a" Write-Host "target path: $target" - cp $tmpdir\$(BITS)\lib\libopenblas_v0.3.5-274-g6a8b4269-gcc_7_1_0.a $target + $openblas = python tools/openblas_support.py + cp $openblas $target displayName: 'Download / Install OpenBLAS' + - powershell: | choco install -y mingw --forcex86 --force --version=5.3.0 displayName: 'Install 32-bit mingw for 32-bit builds' |