@@ -3,29 +3,27 @@ name: Continuous Integration
33on : [push]
44
55jobs :
6- build :
7-
6+ test :
87 runs-on : ubuntu-latest
98 strategy :
10- max-parallel : 4
119 matrix :
12- python : [3.9, 3.8, 3.7]
10+ python : [' 3.9', ' 3.8', ' 3.7', '3.6', 'pypy-3.6', '3.10.0-alpha - 3.10.0' ]
1311 node-version : [15.x]
14- mbtest-version : [2.4, 2.1, 2.0, 1.16]
12+ mbtest-version : [" 2.4", " 2.1", " 2.0", " 1.16" ]
1513
1614 steps :
1715 - uses : actions/checkout@v2
1816 - name : Setup Python ${{ matrix.python }}
1917 uses : actions/setup-python@v2
2018 with :
2119 python-version : ${{ matrix.python }}
22- - name : Use Node.js ${{ matrix.node-version }}
20+ - name : Setup Node.js ${{ matrix.node-version }}
2321 uses : actions/setup-node@v1
2422 with :
2523 node-version : ${{ matrix.node-version }}
2624 - name : Install Tox and any other packages
2725 run : pip install tox
28- - name : Install mbtest
26+ - name : Install mbtest ${{ matrix.mbtest-version }}
2927 env :
3028 MBTEST_VERSION : ${{ matrix.mbtest-version }}
3129 run : npm install mountebank@$MBTEST_VERSION --production
@@ -34,21 +32,54 @@ jobs:
3432 MBTEST_VERSION : ${{ matrix.mbtest-version }}
3533 # Run tox using the version of Python in `PATH`
3634 run : tox -e py
35+
36+ coverage :
37+ needs : test
38+ runs-on : ubuntu-latest
39+ strategy :
40+ matrix :
41+ python : []
42+ node-version : []
43+ mbtest-version : ["2.4"]
44+
45+ steps :
46+ - uses : actions/checkout@v2
47+ - name : Setup Python
48+ uses : actions/setup-python@v2
49+ with :
50+ python-version : ' 3.9'
51+ - name : Setup Node.js
52+ uses : actions/setup-node@v1
53+ with :
54+ node-version : ' 15.x'
55+ - name : Install Tox and any other packages
56+ run : pip install tox
57+ - name : Install mbtest
58+ run : npm install mountebank@2.4 --production
3759 - name : Check coverage
38- if : matrix.python == 3.9 && matrix.mbtest-version == 2.4
60+ env :
61+ MBTEST_VERSION : " 2.4"
3962 run : tox -e coverage
63+
64+ check :
65+ needs : test
66+ runs-on : ubuntu-latest
67+
68+ steps :
69+ - uses : actions/checkout@v2
70+ - name : Setup Python
71+ uses : actions/setup-python@v2
72+ with :
73+ python-version : ' 3.9'
74+ - name : Install Tox and any other packages
75+ run : pip install tox
4076 - name : Check format
41- if : matrix.python == 3.9 && matrix.mbtest-version == 2.4
4277 run : tox -e check-format
4378 - name : Lint
44- if : matrix.python == 3.9 && matrix.mbtest-version == 2.4
4579 run : tox -e flake8
4680 - name : Security checks
47- if : matrix.python == 3.9 && matrix.mbtest-version == 2.4
4881 run : tox -e bandit,safety
4982 - name : Check types
50- if : matrix.python == 3.9 && matrix.mbtest-version == 2.4
5183 run : tox -e mypy
5284 - name : Build docs
53- if : matrix.python == 3.9 && matrix.mbtest-version == 2.4
5485 run : tox -e docs
0 commit comments