@@ -123,25 +123,17 @@ jobs:
123123 - name : Fix lcov paths
124124 run : |
125125 ./.github/actions/codecov-fix.sh
126- - name : Install Codecov CLI
127- run : |
128- curl -Os https://uploader.codecov.io/latest/linux/codecov
129- chmod +x codecov
130- mv codecov /usr/local/bin/
131126 - name : Combine all fixed LCOV files
132127 run : |
133- echo "" > ./combined.lcov
128+ echo "" > ./combined-unit .lcov
134129 for f in ./packages/*/coverage/lcov.fixed.info; do
135- cat "$f" >> ./combined.lcov
130+ cat "$f" >> ./combined-unit .lcov
136131 done
137- - name : Upload coverage to Codecov
138- env :
139- CODECOV_TOKEN : ${{ secrets.CODECOV_TOKEN }}
140- run : |
141- codecov --token "$CODECOV_TOKEN" \
142- --file ./combined.lcov \
143- --flags cube-backend \
144- --name "cube backend coverage" \
132+ - name : Upload coverage artifact
133+ uses : actions/upload-artifact@v4
134+ with :
135+ name : coverage-unit
136+ path : ./combined-unit.lcov
145137
146138 lint :
147139 runs-on : ubuntu-24.04
@@ -512,29 +504,17 @@ jobs:
512504 - name : Fix lcov paths
513505 run : |
514506 ./.github/actions/codecov-fix.sh
515- - name : Debug coverage files
516- run : |
517- ls -al ./packages/*/coverage/lcov.fixed.info
518- cat ./packages/*/coverage/lcov.fixed.info || true
519- - name : Install Codecov CLI
520- run : |
521- curl -Os https://uploader.codecov.io/latest/linux/codecov
522- chmod +x codecov
523- mv codecov /usr/local/bin/
524507 - name : Combine all fixed LCOV files
525508 run : |
526- echo "" > ./combined.lcov
509+ echo "" > ./combined-integration .lcov
527510 for f in ./packages/*/coverage/lcov.fixed.info; do
528- cat "$f" >> ./combined.lcov
511+ cat "$f" >> ./combined-integration .lcov
529512 done
530- - name : Upload coverage to Codecov
531- env :
532- CODECOV_TOKEN : ${{ secrets.CODECOV_TOKEN }}
533- run : |
534- codecov --token "$CODECOV_TOKEN" \
535- --file ./combined.lcov \
536- --flags cube-backend \
537- --name "cube backend coverage" \
513+ - name : Upload coverage artifact
514+ uses : actions/upload-artifact@v4
515+ with :
516+ name : coverage-integration
517+ path : ./combined-integration.lcov
538518
539519 integration-smoke :
540520 needs : [latest-tag-sha, build-cubestore, build-native-linux]
@@ -817,3 +797,26 @@ jobs:
817797 with :
818798 name : cypress-screenshots-docker-dev-${{ matrix.name }}
819799 path : packages/cubejs-testing/cypress/screenshots
800+
801+ upload-coverage :
802+ name : Upload merged coverage to Codecov
803+ needs : [unit, integration]
804+ runs-on : ubuntu-latest
805+ steps :
806+ - name : Install Codecov CLI
807+ run : |
808+ curl -Os https://uploader.codecov.io/latest/linux/codecov
809+ chmod +x codecov
810+ - name : Download all coverage artifacts
811+ uses : actions/download-artifact@v4
812+ with :
813+ path : all-coverage
814+ - name : Merge all coverage files
815+ run : |
816+ find all-coverage -name '*.lcov' -exec cat {} + > merged-coverage.info
817+ - name : Upload merged coverage to Codecov
818+ run : |
819+ ./codecov --token "${{ secrets.CODECOV_TOKEN }}" \
820+ --file ./merged-coverage.info \
821+ --flags cube-backend \
822+ --name "cube backend coverage"
0 commit comments