Skip to content

Commit

Permalink
Add code coverage reports (#435)
Browse files Browse the repository at this point in the history
* Add code coverage reports
* Fix compile error
* Ignore some soure files
* Remove duplicate line
  • Loading branch information
pfultz2 authored Sep 20, 2020
1 parent ef8fdf2 commit 2562e6f
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 4 deletions.
24 changes: 20 additions & 4 deletions Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,13 @@ def rocmnode(name) {



def cmake_build(compiler, flags, env4make, prefixpath){
def cmake_build(compiler, flags, env4make, extradebugflags, prefixpath){
def workspace_dir = pwd()
def vcache = "/var/jenkins/.cache/miopen/vcache"
def archive = (flags == '-DCMAKE_BUILD_TYPE=release')
def config_targets = "check doc MIOpenDriver"
def test_flags = "--disable-verification-cache"
def debug_flags = "-g -fno-omit-frame-pointer -fsanitize=undefined -fno-sanitize-recover=undefined"
def debug_flags = "-g ${extradebugflags} -fno-omit-frame-pointer -fsanitize=undefined -fno-sanitize-recover=undefined"
def compilerpath = ""
def configargs = ""
if (prefixpath == "/usr/local")
Expand Down Expand Up @@ -59,14 +59,20 @@ def cmake_build(compiler, flags, env4make, prefixpath){
def buildJob(Map conf, compiler){

env.HSA_ENABLE_SDMA=0
env.CODECOV_TOKEN="aec031be-7673-43b5-9840-d8fb71a2354e"
checkout scm
def prefixpath = conf.get("prefixpath", "/usr/local")
def flags = conf.get("flags", "")
def env4make = conf.get("env4make", "")
def image = conf.get("image", "miopen")
def cmd = conf.get("cmd", "")
def codecov = conf.get("codecov", false)
def dockerOpts="--device=/dev/kfd --device=/dev/dri --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined"
def dockerArgs = "--build-arg PREFIX=${prefixpath} "
def extradebugflags = ""
if (codecov) {
extradebugflags = "-fprofile-arcs -ftest-coverage"
}
def retimage
try {
retimage = docker.build("${image}", dockerArgs + '.')
Expand All @@ -90,10 +96,20 @@ def buildJob(Map conf, compiler){
timeout(time: 5, unit: 'HOURS')
{
if(cmd == ""){
cmake_build(compiler, flags, env4make, prefixpath)
cmake_build(compiler, flags, env4make, extradebugflags, prefixpath)
}else{
sh cmd
}
if (codecov) {
sh '''
cd build
lcov --directory . --capture --output-file $(pwd)/coverage.info
lcov --remove $(pwd)/coverage.info '/usr/*' --output-file $(pwd)/coverage.info
lcov --list $(pwd)/coverage.info
curl -s https://codecov.io/bash | bash
echo "Uploaded"
'''
}
}
}
return retimage
Expand Down Expand Up @@ -211,7 +227,7 @@ pipeline {
stage('GCC Debug') {
agent{ label rocmnode("vega") }
steps{
buildJob('g++-5', flags: '-DBUILD_DEV=On -DCMAKE_BUILD_TYPE=debug')
buildJob('g++-5', flags: '-DBUILD_DEV=On -DCMAKE_BUILD_TYPE=debug', codecov: true)
}
}

Expand Down
4 changes: 4 additions & 0 deletions codecov.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
ignore:
- "addkernels/"
- "driver/"
- "build/"

0 comments on commit 2562e6f

Please sign in to comment.