ci: fail on failed coverage upload

This commit is contained in:
André Roth
2026-01-11 22:42:58 +01:00
parent 9a6f06d23e
commit 06fea598e1
+45 -14
View File
@@ -18,7 +18,7 @@ env:
jobs:
unit-test:
name: "Unit Tests (Debian 13)"
name: "Unit Tests"
runs-on: ubuntu-22.04
continue-on-error: false
timeout-minutes: 30
@@ -31,17 +31,18 @@ jobs:
- name: "Docker Image"
run: |
make docker-image
- name: "Unit Test"
- name: "Unit Tests"
run: |
make docker-unit-tests
- name: "Upload Code Coverage"
uses: codecov/codecov-action@v2
mkdir -p out/coverage
mv unit.out out/coverage/
- uses: actions/upload-artifact@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: unit.out
name: unit-tests-coverage
path: out/
test:
name: "Test (Ubuntu 22.04)"
name: "System Test"
runs-on: ubuntu-22.04
continue-on-error: false
timeout-minutes: 30
@@ -88,7 +89,8 @@ jobs:
- name: "Run Benchmark"
run: |
COVERAGE_DIR=${{ runner.temp }} make bench
mkdir -p out/coverage
COVERAGE_DIR=$PWD/out/coverage make bench
- name: "Run System Tests"
env:
@@ -100,23 +102,53 @@ jobs:
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
run: |
sudo mkdir -p /srv ; sudo chown runner /srv
COVERAGE_DIR=${{ runner.temp }} make system-test
mkdir -p out/coverage
COVERAGE_DIR=$PWD/out/coverage make system-test
- uses: actions/upload-artifact@v4
with:
name: system-tests-coverage
path: out/
coverage:
name: "Upload Coverage"
runs-on: ubuntu-22.04
continue-on-error: false
timeout-minutes: 30
needs:
- unit-test
- test
steps:
- name: "Checkout Repository"
uses: actions/checkout@v4
- name: "Download Unit Test Coverage"
uses: actions/download-artifact@v4
with:
name: unit-tests-coverage
- name: "Download System Test Coverage"
uses: actions/download-artifact@v4
with:
name: system-tests-coverage
- name: "Merge Code Coverage"
run: |
go install github.com/wadey/gocovmerge@v0.0.0-20160331181800-b5bfa59ec0ad
~/go/bin/gocovmerge ${{ runner.temp }}/*.out > coverage.txt
~/go/bin/gocovmerge coverage/*.out > coverage.txt
- name: "Upload Code Coverage"
uses: codecov/codecov-action@v2
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: coverage.txt
fail_ci_if_error: true
ci-debian-build:
name: "Build"
needs:
- test
- coverage
runs-on: ubuntu-latest
strategy:
fail-fast: false
@@ -237,8 +269,7 @@ jobs:
ci-binary-build:
name: "Build"
needs:
- unit-test
- test
- coverage
runs-on: ubuntu-latest
strategy:
matrix: