1313
1414jobs :
1515 unit :
16- runs-on : ${{ matrix.os }}-latest
16+ runs-on : ${{ matrix.os }}
1717 strategy :
1818 fail-fast : false
1919 matrix :
20- os : [ubuntu, windows, macos]
20+ os : [ubuntu-latest, windows-latest, macos-latest]
21+ python-version : [3.7, 3.8, 3.9, '3.10', 3.11, 3.12]
22+ exclude :
23+ - os : ubuntu-latest
24+ python-version : 3.7
25+ include :
26+ - os : ubuntu-22.04
27+ python-version : 3.7
2128
2229 steps :
2330 - uses : actions/checkout@v4
2431
25- - name : Set up Python 3.7
26- uses : actions/setup-python@v5
27- with :
28- python-version : 3.7
29- if : matrix.os != 'macos'
30- - name : Install dependencies
31- run : python .github/workflows/install_deps.py
32- if : matrix.os != 'macos'
33- - name : Run tests and flake8
34- run : python .github/workflows/run_tests.py
35- if : matrix.os != 'macos'
36-
37- - name : Set up Python 3.8
38- uses : actions/setup-python@v5
39- with :
40- python-version : 3.8
41- - name : Install dependencies
42- run : python .github/workflows/install_deps.py
43- - name : Run tests and flake8
44- run : python .github/workflows/run_tests.py
45-
46- - name : Set up Python 3.9
47- uses : actions/setup-python@v5
48- with :
49- python-version : 3.9
50- - name : Install dependencies
51- run : python .github/workflows/install_deps.py
52- - name : Run tests and flake8
53- run : python .github/workflows/run_tests.py
54-
55- - name : Set up Python 3.10
32+ - name : Set up Python ${{ matrix.python-version }}
5633 uses : actions/setup-python@v5
5734 with :
58- python-version : ' 3.10 '
35+ python-version : ${{ matrix.python-version }}
5936 - name : Install dependencies
6037 run : python .github/workflows/install_deps.py
6138 - name : Run tests and flake8
6239 run : python .github/workflows/run_tests.py
6340
64- - name : Set up Python 3.11
65- uses : actions/setup-python@v5
66- with :
67- python-version : 3.11
68- - name : Install dependencies
69- run : python .github/workflows/install_deps.py
70- - name : Run tests and flake8
71- run : python .github/workflows/run_tests.py
72-
73- - name : Set up Python 3.12
74- uses : actions/setup-python@v5
75- with :
76- python-version : 3.12
77- - name : Install dependencies
78- run : python .github/workflows/install_deps.py
79- - name : Run tests and flake8
80- run : python .github/workflows/run_tests.py
8141
42+ post-unit :
43+ needs : unit
44+ steps :
8245 - name : Combine coverage
8346 run : python .github/workflows/run_tests.py combine
8447
@@ -93,25 +56,30 @@ jobs:
9356 run : python -m coveralls --service=github
9457
9558 behave :
96- runs-on : ${{ matrix.os }}-latest
59+ runs-on : ${{ matrix.os }}
9760 env :
9861 DCS : ${{ matrix.dcs }}
9962 ETCDVERSION : 3.4.23
10063 PGVERSION : 16.1-1 # for windows and macos
10164 strategy :
10265 fail-fast : false
10366 matrix :
104- os : [ubuntu]
67+ os : [ubuntu-latest ]
10568 python-version : [3.7, 3.12]
10669 dcs : [etcd, etcd3, consul, exhibitor, kubernetes, raft]
70+ exclude :
71+ - os : ubuntu-latest
72+ python-version : 3.7
10773 include :
108- - os : macos
74+ - os : ubuntu-22.04
75+ python-version : 3.7
76+ - os : macos-latest
10977 python-version : 3.8
11078 dcs : raft
111- - os : macos
79+ - os : macos-latest
11280 python-version : 3.9
11381 dcs : etcd
114- - os : macos
82+ - os : macos-latest
11583 python-version : 3.11
11684 dcs : etcd3
11785
0 commit comments