• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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