1name: CI 2on: [push, pull_request] 3 4jobs: 5 build: 6 name: Python ${{ matrix.python }} on ${{ matrix.os }} ${{ matrix.arch }} 7 runs-on: ${{ matrix.os }} 8 strategy: 9 matrix: 10 os: 11 - ubuntu-18.04 12 - macOS-latest 13 - windows-2019 14 python: 15 - '2.7' 16 - '3.7' 17 arch: 18 - 'x86' 19 - 'x64' 20 exclude: 21 - os: ubuntu-18.04 22 arch: x86 23 - os: macOS-latest 24 arch: x86 25 steps: 26 - uses: actions/checkout@master 27 - uses: actions/setup-python@v1 28 with: 29 python-version: ${{ matrix.python }} 30 architecture: ${{ matrix.arch }} 31 - name: Install dependencies 32 run: python run.py deps 33 - name: Run test suite 34 run: python run.py ci 35 env: 36 OSCRYPTO_USE_CTYPES: 'true' 37 - name: Run test suite (Mac cffi) 38 run: python run.py ci 39 if: runner.os == 'macOS' 40 - name: Run test suite (Mac OpenSSL) 41 run: python run.py ci 42 if: runner.os == 'macOS' 43 env: 44 OSCRYPTO_USE_OPENSSL: /usr/lib/libcrypto.dylib,/usr/lib/libssl.dylib 45 OSCRYPTO_USE_CTYPES: 'true' 46 - name: Run test suite (Mac OpenSSL/cffi) 47 run: python run.py ci 48 if: runner.os == 'macOS' 49 env: 50 OSCRYPTO_USE_OPENSSL: /usr/lib/libcrypto.dylib,/usr/lib/libssl.dylib 51 - name: Run test suite (Windows legacy API) 52 run: python run.py ci 53 if: runner.os == 'Windows' 54 env: 55 OSCRYPTO_USE_WINLEGACY: 'true' 56