我正在尝试让gitlab代码覆盖率解析工作正常。服务器是Gitlab 10.4.1-ee的本地实例。代码覆盖工具是
lcov
通过稍微修改的版本
this
cmake文件。
我在CI设置和gitlab CI文件中输入了regex,但都没有用。据我所知,如果没有提供,代码覆盖率甚至不会尝试解析。它只做了一件工作(数百件中的一件),再也没有(不知道为什么)。我将输出和正则表达式作为输入提供给
http://rubular.com
它的解析似乎是正确的。我还玩弄了各种迭代,在正则表达式中是否包含单引号或斜杠也没有用。我看不出我们在哪里可以得到任何调试输出或其他东西来表明这一步骤实际上已经执行了。
项目的
CI/CD Settings
&燃气轮机;
Test coverage parsing
条目:
\bOverall\D+(\d+[.]\d\%)
这份工作很重要
.gitlab-ci.yml
coverage:
stage: build
image: <redacted>:stable
script:
- mkdir build
- cd build
- cmake -DCMAKE_BUILD_TYPE=Debug .. && make coverage
coverage: '/(?m)\bOverall\D+(\d+[.]\d\%)/'
artifacts:
paths:
- build/coverage/
作业的相关输出:
Overall coverage rate:
lines......: 95.2% (749 of 787 lines)
functions..: 96.5% (110 of 114 functions)
Open ./coverage/index.html in your browser to view the coverage report.
[100%] Built target coverage
Uploading artifacts...
build/coverage/: found 63 matching files
Uploading artifacts to coordinator... ok id=20671 responseStatus=201 Created token=kRnB--qX
Job succeeded