@@ -193,6 +193,12 @@ jobs:
193193 path : |
194194 .tox/.coverage
195195 .tox/coverage.xml
196+ - uses : actions/upload-artifact@v4
197+ with :
198+ include-hidden-files : true
199+ name : junit_${{ matrix.os.download_name }}-${{ matrix.python-version }}-${{ matrix.cloud-provider }}
200+ path : |
201+ .tox/junit.*.xml
196202
197203 test-olddriver :
198204 name : Old Driver Test ${{ matrix.os.download_name }}-${{ matrix.python-version }}-${{ matrix.cloud-provider }}
@@ -307,6 +313,12 @@ jobs:
307313 path : |
308314 .coverage
309315 coverage.xml
316+ - uses : actions/upload-artifact@v4
317+ with :
318+ include-hidden-files : true
319+ name : junit_linux-fips-3.9-${{ matrix.cloud-provider }}
320+ path : |
321+ junit.*.xml
310322
311323 test-lambda :
312324 name : Test Lambda linux-${{ matrix.python-version }}-${{ matrix.cloud-provider }}
@@ -354,6 +366,12 @@ jobs:
354366 path : |
355367 .coverage.py${{ env.shortver }}-lambda-ci
356368 junit.py${{ env.shortver }}-lambda-ci-dev.xml
369+ - uses : actions/upload-artifact@v4
370+ with :
371+ include-hidden-files : true
372+ name : junit_linux-lambda-${{ matrix.python-version }}-${{ matrix.cloud-provider }}
373+ path : |
374+ junit.py${{ env.shortver }}-lambda-ci-dev.xml
357375
358376 combine-coverage :
359377 if : ${{ success() || failure() }}
@@ -388,6 +406,21 @@ jobs:
388406 dst_file = dst_dir / ".coverage.{}".format(src_file.parent.name[9:])
389407 print("{} copy to {}".format(src_file, dst_file))
390408 shutil.copy(str(src_file), str(dst_file))'
409+ - name : Collect all JUnit XML files to one dir
410+ run : |
411+ python -c '
412+ from pathlib import Path
413+ import shutil
414+
415+ src_dir = Path("artifacts")
416+ dst_dir = Path(".") / "junit_results"
417+ dst_dir.mkdir()
418+ # Collect all JUnit XML files with different naming patterns
419+ for pattern in ["*/junit.*.xml", "*/junit.py*-lambda-ci-dev.xml"]:
420+ for src_file in src_dir.glob(pattern):
421+ dst_file = dst_dir / src_file.name
422+ print("{} copy to {}".format(src_file, dst_file))
423+ shutil.copy(str(src_file), str(dst_file))'
391424 - name : Combine coverages
392425 run : python -m tox run -e coverage
393426 - name : Publish html coverage
@@ -406,3 +439,9 @@ jobs:
406439 with :
407440 files : .tox/coverage.xml
408441 token : ${{ secrets.CODECOV_TOKEN }}
442+ - name : Upload test results to Codecov
443+ if : ${{ !cancelled() }}
444+ uses : codecov/test-results-action@v1
445+ with :
446+ token : ${{ secrets.CODECOV_TOKEN }}
447+ files : junit_results/junit.*.xml
0 commit comments