13
13
14
14
jobs :
15
15
16
- build :
16
+ build_wheels :
17
17
runs-on : ${{ matrix.os }}
18
18
strategy :
19
19
matrix :
20
20
python-version : ['3.9', '3.10', '3.11', '3.12']
21
21
os : [windows-latest, macOS-latest, ubuntu-latest]
22
+ fail-fast : false
22
23
steps :
23
24
- uses : actions/checkout@v4
24
25
- name : Set up Python
@@ -41,13 +42,14 @@ jobs:
41
42
name : pecos_${{ matrix.python-version }}_${{ matrix.os }}.whl
42
43
path : dist/pecos*
43
44
44
- install_import :
45
- needs : build
45
+ test_wheels :
46
+ needs : build_wheels
46
47
runs-on : ${{ matrix.os }}
47
48
strategy :
48
49
matrix :
49
50
python-version : ['3.9', '3.10', '3.11', '3.12']
50
51
os : [windows-latest, macOS-latest, ubuntu-latest]
52
+ fail-fast : false
51
53
steps :
52
54
- name : Set up Python
53
55
uses : actions/setup-python@v5
66
68
run : |
67
69
python -c "import pecos"
68
70
69
- pytest_coverage :
71
+ run_coverage :
70
72
runs-on : ${{ matrix.os }}
71
73
strategy :
72
74
matrix :
98
100
path : .coverage.${{ matrix.python-version }}.${{ matrix.os }}
99
101
100
102
combine_reports :
101
- needs : [ pytest_coverage ]
103
+ needs : [ run_coverage ]
102
104
runs-on : ubuntu-latest
103
105
steps :
104
106
- name : Set up Python
@@ -111,11 +113,12 @@ jobs:
111
113
python -m pip install --upgrade pip
112
114
pip install -r requirements.txt
113
115
python -m pip install -e .
116
+ pip install coveralls
114
117
- name : Download coverage artifacts from test matrix
115
118
uses : actions/download-artifact@v4
116
119
with :
117
120
name : coverage
118
- - name : Setup coverage and combine reports
121
+ - name : Create coverage report
119
122
run : |
120
123
echo "[paths]" > .coveragerc
121
124
echo "source = " >> .coveragerc
@@ -125,52 +128,21 @@ jobs:
125
128
echo " /home/runner/work/pecos/pecos/pecos" >> .coveragerc
126
129
echo " /Users/runner/work/pecos/pecos/pecos" >> .coveragerc
127
130
coverage combine
128
- - name : Create coverage report
129
- run : |
131
+
130
132
coverage report
131
133
coverage json --pretty-print
132
134
coverage html --show-contexts
133
135
- name : Save coverage JSON
134
136
uses : actions/upload-artifact@v4
135
137
with :
136
- name : coverage
138
+ name : coverage-json
137
139
path : coverage.json
138
140
- name : Save coverage html
139
141
uses : actions/upload-artifact@v4
140
142
with :
141
- name : coverage
143
+ name : coverage-html
142
144
path : htmlcov
143
145
144
- coveralls :
145
- needs : [ pytest_coverage ]
146
- runs-on : ubuntu-latest
147
- continue-on-error : true
148
- steps :
149
- - name : Set up Python
150
- uses : actions/setup-python@v5
151
- with :
152
- python-version : 3.11
153
- - uses : actions/checkout@v4
154
- - name : Install coverage
155
- run : |
156
- python -m pip install --upgrade pip
157
- pip install coveralls
158
- pip install -r requirements.txt
159
- python -m pip install -e .
160
- - name : Download coverage artifacts from test matrix
161
- uses : actions/download-artifact@v2
162
- with :
163
- name : coverage
164
- - name : Setup coverage and combine reports
165
- run : |
166
- echo "[paths]" > .coveragerc
167
- echo "source = " >> .coveragerc
168
- echo " pecos/" >> .coveragerc
169
- echo " pecos\\" >> .coveragerc
170
- echo " D:\\a\\pecos\\pecos\\pecos" >> .coveragerc
171
- echo " /home/runner/work/pecos/pecos/pecos" >> .coveragerc
172
- echo " /Users/runner/work/pecos/pecos/pecos" >> .coveragerc
173
- coverage combine
174
146
- name : Push to coveralls
175
147
run : |
176
148
coveralls --service=github
0 commit comments