summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
diff options
context:
space:
mode:
authorJeremy Bettis <jbettis@google.com>2021-09-30 09:49:08 -0600
committerCommit Bot <commit-bot@chromium.org>2021-10-01 18:27:53 +0000
commit9a92370a2a856f7f6ebc19aaf9cc9039eccc8e93 (patch)
tree186e590ca606f530f1aa6ccd55548ac3d2fe3df9 /.gitlab-ci.yml
parent603cc1060149b7e5bc90b9e73ad8687b082f387b (diff)
downloadchrome-ec-9a92370a2a856f7f6ebc19aaf9cc9039eccc8e93.tar.gz
gitlab: Move board coverage to a template
This will allow us to build coverage reports for multiple boards. Also add the `coverage` keyword, so the coverage of each step will appear on the jobs page. I.e. https://gitlab.com/zephyr-ec/ec/-/pipelines/380049325/builds BRANCH=None BUG=None TEST=None Change-Id: I892653406f471b3c98ad6dbd7cb91c086614e264 Signed-off-by: Jeremy Bettis <jbettis@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3197731 Commit-Queue: Jeremy Bettis <jbettis@chromium.org> Tested-by: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Yuval Peress <peress@google.com>
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r--.gitlab-ci.yml28
1 files changed, 26 insertions, 2 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 0179bc72e8..7857321e37 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -46,6 +46,7 @@ before_script:
- export ZEPHYR_DIR=/zephyr
- export PATH="$PATH:$HOME/.local/bin"
- export PYTHONIOENCODING=utf-8
+ - export EC_DIR=/builds/zephyr-ec/ec
# Users of this template must set:
# $PROJECT to the project to build in zephyr/projects. E.g. "lazor")
@@ -71,6 +72,23 @@ before_script:
- build/${PROJECT}/output/*
expire_in: 1 week
+# Users of this template must set:
+# $PROJECT to the project to build in zephyr/projects. E.g. "lazor")
+# $PROJECT_SUBDIR if it is in a subdirectory. E.g. "trogdor/"
+.coverage_template: &coverage_template
+ stage: test
+ needs: ["merged_coverage", "zephyr_coverage"]
+ script:
+ - PROJECT_NAME=$(echo ${PROJECT_SUBDIR}${PROJECT} | tr '/' '_')
+ - grep "SF:" "build/zcoverage/projects_${PROJECT_NAME}.info" | sort -u | sed -e 's|^SF:||' | xargs lcov -o build/no_zephyr_${PROJECT_NAME}.info -e build/merged_no_zephyr.info
+ - /usr/bin/genhtml -q -o build/no_zephyr_${PROJECT_NAME}_rpt -t "${PROJECT} coverage w/o zephyr" -p ${EC_DIR} -s build/no_zephyr_${PROJECT_NAME}.info
+ artifacts:
+ paths:
+ - build/*.info
+ - build/*_rpt
+ expire_in: 1 week
+ coverage: '/lines\.*: \d+\.\d+%/'
+
delbin:
variables:
PROJECT: "delbin"
@@ -89,6 +107,12 @@ herobrine_npcx9:
PROJECT_SUBDIR: "herobrine/"
<<: *build_template
+herobrine_npcx9_coverage:
+ variables:
+ PROJECT: "herobrine_npcx9"
+ PROJECT_SUBDIR: "herobrine/"
+ <<: *coverage_template
+
it8xxx2_evb:
variables:
PROJECT: "it8xxx2_evb"
@@ -130,6 +154,7 @@ ec_coverage:
- build/coverage/coverage_rpt/*
- build/coverage/lcov.info
expire_in: 1 week
+ coverage: '/lines\.*: \d+\.\d+%/'
zephyr_coverage:
stage: test
@@ -143,6 +168,7 @@ zephyr_coverage:
- build/zcoverage/coverage_rpt/*
- build/zcoverage/*.info
expire_in: 1 week
+ coverage: '/lines\.*: \d+\.\d+%/'
merged_coverage:
stage: test
@@ -150,8 +176,6 @@ merged_coverage:
script:
- lcov -o build/merged.info -a build/coverage/lcov.info -a build/zcoverage/lcov.info
- lcov -o build/merged_no_zephyr.info -r build/merged.info "${ZEPHYR_ROOT}/*" "${MODULES_DIR}/*" '/usr/include/x86_64-linux-gnu/*'
- - grep "SF:" build/zcoverage/projects_herobrine_herobrine_npcx9.info | sort -u | sed -e 's|^SF:||' | xargs lcov -o build/merged_no_zephyr_herobrine_npcx9.info -e build/merged_no_zephyr.info
- - /usr/bin/genhtml -q -o build/merged_no_zephyr_herobrine_npcx9_rpt -t "Herobrine npcx9 coverage w/o zephyr" -p /builds/zephyr-ec/ec -s build/merged_no_zephyr_herobrine_npcx9.info
artifacts:
paths:
- build/*.info