6262jobs :
6363 job_get_metadata :
6464 name : Get Metadata
65- runs-on : ubuntu-22 .04
65+ runs-on : ubuntu-20 .04
6666 permissions :
6767 pull-requests : read
6868 steps :
@@ -118,7 +118,7 @@ jobs:
118118 job_build :
119119 name : Build
120120 needs : job_get_metadata
121- runs-on : ubuntu-22 .04
121+ runs-on : ubuntu-20 .04
122122 timeout-minutes : 15
123123 if : |
124124 needs.job_get_metadata.outputs.changed_any_code == 'true' ||
@@ -196,7 +196,7 @@ jobs:
196196 job_check_branches :
197197 name : Check PR branches
198198 needs : job_get_metadata
199- runs-on : ubuntu-22 .04
199+ runs-on : ubuntu-20 .04
200200 if : github.event_name == 'pull_request'
201201 permissions :
202202 pull-requests : write
@@ -212,7 +212,7 @@ jobs:
212212 name : Size Check
213213 needs : [job_get_metadata, job_build]
214214 timeout-minutes : 15
215- runs-on : ubuntu-22 .04
215+ runs-on : ubuntu-20 .04
216216 if :
217217 github.event_name == 'pull_request' || needs.job_get_metadata.outputs.is_base_branch == 'true' ||
218218 needs.job_get_metadata.outputs.is_release == 'true'
@@ -242,7 +242,7 @@ jobs:
242242 # inter-package dependencies resolve cleanly.
243243 needs : [job_get_metadata, job_build]
244244 timeout-minutes : 10
245- runs-on : ubuntu-22 .04
245+ runs-on : ubuntu-20 .04
246246 steps :
247247 - name : Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }})
248248 uses : actions/checkout@v4
@@ -267,7 +267,7 @@ jobs:
267267 name : Check file formatting
268268 needs : [job_get_metadata]
269269 timeout-minutes : 10
270- runs-on : ubuntu-22 .04
270+ runs-on : ubuntu-20 .04
271271 steps :
272272 - name : Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }})
273273 uses : actions/checkout@v4
@@ -290,7 +290,7 @@ jobs:
290290 name : Circular Dependency Check
291291 needs : [job_get_metadata, job_build]
292292 timeout-minutes : 10
293- runs-on : ubuntu-22 .04
293+ runs-on : ubuntu-20 .04
294294 steps :
295295 - name : Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }})
296296 uses : actions/checkout@v4
@@ -310,7 +310,7 @@ jobs:
310310 job_artifacts :
311311 name : Upload Artifacts
312312 needs : [job_get_metadata, job_build]
313- runs-on : ubuntu-22 .04
313+ runs-on : ubuntu-20 .04
314314 # Build artifacts are only needed for releasing workflow.
315315 if : needs.job_get_metadata.outputs.is_release == 'true'
316316 steps :
@@ -347,7 +347,7 @@ jobs:
347347 name : Browser Unit Tests
348348 needs : [job_get_metadata, job_build]
349349 timeout-minutes : 10
350- runs-on : ubuntu-22 .04
350+ runs-on : ubuntu-20 .04
351351 steps :
352352 - name : Check out base commit (${{ github.event.pull_request.base.sha }})
353353 uses : actions/checkout@v4
@@ -381,12 +381,20 @@ jobs:
381381 with :
382382 token : ${{ secrets.CODECOV_TOKEN }}
383383
384+ - name : Upload test results to Codecov
385+ if : cancelled() == false
386+ continue-on-error : true
387+ uses : codecov/test-results-action@v1
388+ with :
389+ files : packages/**/*.junit.xml
390+ token : ${{ secrets.CODECOV_TOKEN }}
391+
384392 job_bun_unit_tests :
385393 name : Bun Unit Tests
386394 needs : [job_get_metadata, job_build]
387395 if : needs.job_build.outputs.changed_bun == 'true' || github.event_name != 'pull_request'
388396 timeout-minutes : 10
389- runs-on : ubuntu-22 .04
397+ runs-on : ubuntu-20 .04
390398 strategy :
391399 fail-fast : false
392400 steps :
@@ -413,7 +421,7 @@ jobs:
413421 needs : [job_get_metadata, job_build]
414422 if : needs.job_build.outputs.changed_deno == 'true' || github.event_name != 'pull_request'
415423 timeout-minutes : 10
416- runs-on : ubuntu-22 .04
424+ runs-on : ubuntu-20 .04
417425 strategy :
418426 fail-fast : false
419427 steps :
@@ -443,7 +451,7 @@ jobs:
443451 name : Node (${{ matrix.node }}) Unit Tests
444452 needs : [job_get_metadata, job_build]
445453 timeout-minutes : 10
446- runs-on : ubuntu-22 .04
454+ runs-on : ubuntu-20 .04
447455 strategy :
448456 fail-fast : false
449457 matrix :
@@ -484,6 +492,14 @@ jobs:
484492 with :
485493 token : ${{ secrets.CODECOV_TOKEN }}
486494
495+ - name : Upload test results to Codecov
496+ if : cancelled() == false
497+ continue-on-error : true
498+ uses : codecov/test-results-action@v1
499+ with :
500+ files : packages/**/*.junit.xml
501+ token : ${{ secrets.CODECOV_TOKEN }}
502+
487503 job_browser_playwright_tests :
488504 name : Playwright ${{ matrix.bundle }}${{ matrix.project && matrix.project != 'chromium' && format(' {0}', matrix.project) || ''}}${{ matrix.shard && format(' ({0}/{1})', matrix.shard, matrix.shards) || ''}} Tests
489505 needs : [job_get_metadata, job_build]
@@ -578,7 +594,7 @@ jobs:
578594 name : PW ${{ matrix.bundle }} Tests
579595 needs : [job_get_metadata, job_build]
580596 if : needs.job_build.outputs.changed_browser_integration == 'true' || github.event_name != 'pull_request'
581- runs-on : ubuntu-22 .04
597+ runs-on : ubuntu-20 .04
582598 timeout-minutes : 15
583599 strategy :
584600 fail-fast : false
@@ -638,7 +654,7 @@ jobs:
638654 job_check_for_faulty_dts :
639655 name : Check for faulty .d.ts files
640656 needs : [job_get_metadata, job_build]
641- runs-on : ubuntu-22 .04
657+ runs-on : ubuntu-20 .04
642658 timeout-minutes : 5
643659 steps :
644660 - name : Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }})
@@ -666,7 +682,7 @@ jobs:
666682 Tests
667683 needs : [job_get_metadata, job_build]
668684 if : needs.job_build.outputs.changed_node_integration == 'true' || github.event_name != 'pull_request'
669- runs-on : ubuntu-22 .04
685+ runs-on : ubuntu-20 .04
670686 timeout-minutes : 15
671687 strategy :
672688 fail-fast : false
@@ -701,11 +717,19 @@ jobs:
701717 working-directory : dev-packages/node-integration-tests
702718 run : yarn test
703719
720+ - name : Upload test results to Codecov
721+ if : cancelled() == false
722+ continue-on-error : true
723+ uses : codecov/test-results-action@v1
724+ with :
725+ directory : dev-packages/node-integration-tests
726+ token : ${{ secrets.CODECOV_TOKEN }}
727+
704728 job_remix_integration_tests :
705729 name : Remix (Node ${{ matrix.node }}) Tests
706730 needs : [job_get_metadata, job_build]
707731 if : needs.job_build.outputs.changed_remix == 'true' || github.event_name != 'pull_request'
708- runs-on : ubuntu-22 .04
732+ runs-on : ubuntu-20 .04
709733 timeout-minutes : 10
710734 strategy :
711735 fail-fast : false
@@ -737,6 +761,14 @@ jobs:
737761 cd packages/remix
738762 yarn test:integration:ci
739763
764+ - name : Upload test results to Codecov
765+ if : cancelled() == false
766+ continue-on-error : true
767+ uses : codecov/test-results-action@v1
768+ with :
769+ directory : packages/remix
770+ token : ${{ secrets.CODECOV_TOKEN }}
771+
740772 job_e2e_prepare :
741773 name : Prepare E2E tests
742774 # We want to run this if:
@@ -801,7 +833,7 @@ jobs:
801833 # See: https://github.com/actions/runner/issues/2205
802834 if : always() && needs.job_e2e_prepare.result == 'success' && needs.job_e2e_prepare.outputs.matrix != '{"include":[]}'
803835 needs : [job_get_metadata, job_build, job_e2e_prepare]
804- runs-on : ubuntu-22 .04
836+ runs-on : ubuntu-20 .04
805837 timeout-minutes : 15
806838 env :
807839 # We just use a dummy DSN here, only send to the tunnel anyhow
@@ -923,7 +955,7 @@ jobs:
923955 (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository) &&
924956 github.actor != 'dependabot[bot]'
925957 needs : [job_get_metadata, job_build, job_e2e_prepare]
926- runs-on : ubuntu-22 .04
958+ runs-on : ubuntu-20 .04
927959 timeout-minutes : 15
928960 env :
929961 E2E_TEST_AUTH_TOKEN : ${{ secrets.E2E_TEST_AUTH_TOKEN }}
@@ -1043,7 +1075,7 @@ jobs:
10431075 ]
10441076 # Always run this, even if a dependent job failed
10451077 if : always()
1046- runs-on : ubuntu-22 .04
1078+ runs-on : ubuntu-20 .04
10471079 steps :
10481080 - name : Check for failures
10491081 if : contains(needs.*.result, 'failure')
0 commit comments