summaryrefslogtreecommitdiff
path: root/.github/workflows/ci-tests.yml
blob: 0e146c05feda8c5c9b1f2c9d73a129c0c582e277 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
name: Build and test

on:
    # Build on pushes to master
    push:
        branches:
            - master
        tags:
    # Build pull requests
    pull_request:

jobs:
    test:
        strategy:
            matrix:
                py:
                    - "3.6"
                    - "3.7"
                    - "3.8"
                    - "3.9"
                os:
                    - "ubuntu-latest"
                architecture:
                    - x64

        name: "Python: ${{ matrix.py }}-${{ matrix.architecture }} on ${{ matrix.os }}"
        runs-on: ${{ matrix.os }}
        steps:
            - uses: actions/checkout@v2
            - name: Setup python
              uses: actions/setup-python@v2
              with:
                  python-version: ${{ matrix.py }}
                  architecture: ${{ matrix.architecture }}
            - run: pip install tox
            - name: Running tox
              run: tox -e py
    coverage:
        runs-on: ubuntu-latest
        name: Validate coverage
        # Assume coverage is identical across supported versions of Python.
        # Choose the latest Python.
        steps:
            - uses: actions/checkout@v2
            - name: Setup python
              uses: actions/setup-python@v2
              with:
                  python-version: 3.9
                  architecture: x64
            - run: pip install tox
            - run: tox -e py39,coverage
    docs:
        runs-on: ubuntu-latest
        name: Build the documentation
        steps:
            - uses: actions/checkout@v2
            - name: Setup python
              uses: actions/setup-python@v2
              with:
                  python-version: 3.9
                  architecture: x64
            - run: pip install tox
            - run: tox -e docs