about summary refs log tree commit diff
path: root/pkgs/build-support
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2015-07-30 17:29:19 +0200
committerEelco Dolstra <eelco.dolstra@logicblox.com>2015-07-30 18:06:33 +0200
commit068f8abaa5954ec79a72343b9102d8bad2632eb1 (patch)
tree3cf0a934efb8b0b977433bf4694ccb2437742951 /pkgs/build-support
parent2c9a97ee14b93e1394f41cd44cde8a5a2c4b0e62 (diff)
downloadnixlib-068f8abaa5954ec79a72343b9102d8bad2632eb1.tar
nixlib-068f8abaa5954ec79a72343b9102d8bad2632eb1.tar.gz
nixlib-068f8abaa5954ec79a72343b9102d8bad2632eb1.tar.bz2
nixlib-068f8abaa5954ec79a72343b9102d8bad2632eb1.tar.lz
nixlib-068f8abaa5954ec79a72343b9102d8bad2632eb1.tar.xz
nixlib-068f8abaa5954ec79a72343b9102d8bad2632eb1.tar.zst
nixlib-068f8abaa5954ec79a72343b9102d8bad2632eb1.zip
releaseTools.coverageAnalysis: Emit hydra-metrics
Diffstat (limited to 'pkgs/build-support')
-rw-r--r--pkgs/build-support/setup-hooks/make-coverage-analysis-report.sh11
1 files changed, 9 insertions, 2 deletions
diff --git a/pkgs/build-support/setup-hooks/make-coverage-analysis-report.sh b/pkgs/build-support/setup-hooks/make-coverage-analysis-report.sh
index 4b8abb61ace5..9108b4c50355 100644
--- a/pkgs/build-support/setup-hooks/make-coverage-analysis-report.sh
+++ b/pkgs/build-support/setup-hooks/make-coverage-analysis-report.sh
@@ -10,9 +10,16 @@ coverageReportPhase() {
     mkdir -p $out/coverage
     genhtml app.info $lcovExtraTraceFiles -o $out/coverage > log
 
-    # Grab the overall coverage percentage for use in release overviews.
+    # Grab the overall coverage percentage so that Hydra can plot it over time.
     mkdir -p $out/nix-support
-    grep "Overall coverage rate" log | sed 's/^.*(\(.*\)%).*$/\1/' > $out/nix-support/coverage-rate
+    lineCoverage="$(sed 's/.*lines\.*: \([0-9\.]\+\)%.*/\1/; t ; d' log)"
+    functionCoverage="$(sed 's/.*functions\.*: \([0-9\.]\+\)%.*/\1/; t ; d' log)"
+    if [ -z "$lineCoverage" -o -z "$functionCoverage" ]; then
+        echo "failed to get coverage statistics"
+        exit 1
+    fi
+    echo "lineCoverage $lineCoverage %" >> $out/nix-support/hydra-metrics
+    echo "functionCoverage $functionCoverage %" >> $out/nix-support/hydra-metrics
 
     echo "report coverage $out/coverage" >> $out/nix-support/hydra-build-products
 }