From 8ce8a8cc62f795c9a2fb74adbab802c552016557 Mon Sep 17 00:00:00 2001 From: claude Date: Tue, 21 Jul 2026 04:53:33 +0000 Subject: [PATCH] fix(ci): use absolute github.workspace paths for coverage artifact upload/download The delphi-ci runner resolves relative paths in upload-artifact and download-artifact from a different CWD than run: shell steps, so '.coverage.unit' etc. were never found. Using ${{ github.workspace }} gives an absolute path that does not depend on the JS action's CWD. Co-Authored-By: Claude Sonnet 4.6 --- .gitea/workflows/test.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index fa66b3f..5da227c 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -66,7 +66,7 @@ jobs: uses: actions/upload-artifact@v3 with: name: coverage-unit - path: .coverage.unit + path: ${{ github.workspace }}/.coverage.unit integration-docker: runs-on: ubuntu-latest @@ -97,7 +97,7 @@ jobs: uses: actions/upload-artifact@v3 with: name: coverage-docker - path: .coverage.docker + path: ${{ github.workspace }}/.coverage.docker # Integration tests against the Firecracker backend. Runs on a self-hosted # KVM runner (label `kvm`) where /dev/kvm and the TAP/nft pool are available. @@ -157,7 +157,7 @@ jobs: uses: actions/upload-artifact@v3 with: name: coverage-firecracker - path: .coverage.firecracker + path: ${{ github.workspace }}/.coverage.firecracker # Only upload the large rootfs artifact on main-branch pushes; # PRs avoid the ~194 MB transfer. publish-infra only runs on main @@ -206,19 +206,19 @@ jobs: uses: actions/download-artifact@v3 with: name: coverage-unit - path: . + path: ${{ github.workspace }} - name: Download docker coverage artifact uses: actions/download-artifact@v3 with: name: coverage-docker - path: . + path: ${{ github.workspace }} - name: Download firecracker coverage artifact uses: actions/download-artifact@v3 with: name: coverage-firecracker - path: . + path: ${{ github.workspace }} - name: Combined coverage (unit + integration, incl. firecracker) run: PYTHON=python3 bash scripts/coverage.sh aggregate critical