File tree Expand file tree Collapse file tree 1 file changed +24
-8
lines changed Expand file tree Collapse file tree 1 file changed +24
-8
lines changed Original file line number Diff line number Diff line change @@ -261,7 +261,6 @@ jobs:
261261 name : coverage-sqlsrv-${{ matrix.laravel }}-${{ matrix.php }}
262262 path : coverage/clover.xml
263263
264-
265264 merge-coverage :
266265 name : Merge Coverage
267266 runs-on : ubuntu-latest
@@ -275,17 +274,34 @@ jobs:
275274 with :
276275 path : all-coverage
277276
278- - name : Install Clover Merge Tool
279- run : |
280- composer global require edinm/clover-merge
281-
282- - name : Merge coverage files
277+ - name : Merge coverage reports using Python
283278 run : |
284279 mkdir -p coverage
285- ~/.composer/vendor/bin/clover-merge all-coverage coverage/clover.xml
280+ echo '
281+ import os
282+ import xml.etree.ElementTree as ET
283+
284+ merged = None
285+
286+ for root, dirs, files in os.walk("all-coverage"):
287+ for file in files:
288+ if not file.endswith(".xml"):
289+ continue
290+ path = os.path.join(root, file)
291+ tree = ET.parse(path)
292+ root_elem = tree.getroot()
293+ if merged is None:
294+ merged = root_elem
295+ else:
296+ for pkg in root_elem.findall("packages/package"):
297+ merged.find("packages").append(pkg)
298+
299+ ET.ElementTree(merged).write("coverage/clover.xml", encoding="utf-8", xml_declaration=True)
300+ ' > merge.py
301+ python3 merge.py
286302
287303 - name : Upload merged coverage to Qlty
288304 uses : qltysh/qlty-action/coverage@v1
289305 with :
290306 token : ${{ secrets.QLTY_COVERAGE_TOKEN }}
291- files : coverage/clover.xml
307+ files : coverage/clover.xml
You can’t perform that action at this time.
0 commit comments