From 30c3c7ff3a1c4a7383400c2b87e5b76e0217de21 Mon Sep 17 00:00:00 2001
From: shamoon <4887959+shamoon@users.noreply.github.com>
Date: Wed, 5 Mar 2025 13:24:59 -0800
Subject: [PATCH] Update ci.yml

---
 .github/workflows/ci.yml | 58 +++++++++++++++++++++++-----------------
 1 file changed, 33 insertions(+), 25 deletions(-)

diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 219d55a02..e4953427c 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -162,7 +162,7 @@ jobs:
             --frozen \
             pytest
       -
-        name: Upload coverage
+        name: Upload coverage artifact
         if: ${{ matrix.python-version == env.DEFAULT_PYTHON_VERSION }}
         uses: actions/upload-artifact@v4
         with:
@@ -280,10 +280,40 @@ jobs:
           path: src-ui/junit-report-${{ matrix.shard-index }}.xml
           retention-days: 7
 
-  tests-coverage-upload:
-    name: "Upload to Codecov"
+  tests-upload:
+    name: "Upload test results to Codecov"
     runs-on: ubuntu-24.04
     if: ${{ !cancelled() }}
+    needs:
+      - tests-backend
+      - tests-frontend
+    steps:
+      -
+        name: Download frontend test results
+        uses: actions/download-artifact@v4
+        with:
+          path: src-ui/junit/
+          pattern: junit-report-*
+          merge-multiple: true
+      -
+        name: Upload frontend test results to Codecov
+        if: ${{ !cancelled() }}
+        uses: codecov/test-results-action@v1
+        with:
+          token: ${{ secrets.CODECOV_TOKEN }}
+          flags: frontend
+          directory: src-ui/junit/
+      -
+        name: Upload backend test results to Codecov
+        uses: codecov/test-results-action@v1
+        with:
+          token: ${{ secrets.CODECOV_TOKEN }}
+          flags: backend
+          directory: src/
+
+  tests-coverage-upload:
+    name: "Upload coverage to Codecov"
+    runs-on: ubuntu-24.04
     needs:
       - tests-backend
       - tests-frontend
@@ -303,13 +333,6 @@ jobs:
           path: src-ui/coverage/
           pattern: playwright-report-*
           merge-multiple: true
-      -
-        name: Download frontend test results
-        uses: actions/download-artifact@v4
-        with:
-          path: src-ui/junit/
-          pattern: junit-report-*
-          merge-multiple: true
       -
         name: Upload frontend coverage to Codecov
         uses: codecov/codecov-action@v5
@@ -320,14 +343,6 @@ jobs:
           directory: src-ui/coverage/
           # dont include backend coverage files here
           files: '!coverage.xml'
-      -
-        name: Upload frontend test results to Codecov
-        if: ${{ !cancelled() }}
-        uses: codecov/test-results-action@v1
-        with:
-          token: ${{ secrets.CODECOV_TOKEN }}
-          flags: frontend
-          directory: src-ui/junit/
       -
         name: Download backend coverage
         uses: actions/download-artifact@v4
@@ -343,13 +358,6 @@ jobs:
           # future expansion
           flags: backend
           directory: src/
-      -
-        name: Upload backend test results to Codecov
-        uses: codecov/test-results-action@v1
-        with:
-          token: ${{ secrets.CODECOV_TOKEN }}
-          flags: backend
-          directory: src/
       -
         name: Use Node.js 20
         uses: actions/setup-node@v4