Commit a6ddf2fb authored by PRUVOST Florent's avatar PRUVOST Florent

pipeline build -> test+analysis -> sonar-scanner

parent a8808f9a
image: hpclib/scalfmm
stages:
- build
- test
- sonar
utests:
build:
stage: build
script:
- mkdir BuildTests
- cd BuildTests
- cmake -DSCALFMM_USE_LOG=ON -DSCALFMM_USE_BLAS=ON -DSCALFMM_USE_ASSERT=ON -DSCALFMM_BUILD_UTESTS=ON -DSCALFMM_BUILD_TESTS=ON -DSCALFMM_USE_FFT=ON ..
- make
- OMP_NUM_THREADS=2 make test
tags:
- gcc
- blas
- fftw
- cd Build && cmake ..
-DSCALFMM_USE_LOG=ON
-DSCALFMM_USE_ASSERT=ON
-DSCALFMM_USE_SSE=ON
-DSCALFMM_USE_BLAS=ON
-DSCALFMM_USE_FFT=ON
-DSCALFMM_USE_MPI=ON
-DSCALFMM_BUILD_EXAMPLES=ON
-DSCALFMM_BUILD_TESTS=OFF
-DSCALFMM_BUILD_UTESTS=OFF
-DCMAKE_VERBOSE_MAKEFILE=ON
- make -j8
test:
stage: test
artifacts:
name: scalfmm_test
expire_in: 1 day
paths:
- scalfmm-build.log
- scalfmm.lcov
- scalfmm-coverage.xml
#- scalfmm-cppcheck.xml
- scalfmm-rats.xml
script:
- cd Build && cmake ..
-DSCALFMM_USE_LOG=ON
-DSCALFMM_USE_ASSERT=ON
-DSCALFMM_USE_SSE=ON
-DSCALFMM_USE_BLAS=ON
-DSCALFMM_USE_FFT=ON
-DSCALFMM_USE_MPI=ON
-DSCALFMM_BUILD_EXAMPLES=ON
-DSCALFMM_BUILD_TESTS=ON
-DSCALFMM_BUILD_UTESTS=ON
-DCMAKE_VERBOSE_MAKEFILE=ON
-DCMAKE_CXX_FLAGS="-O0 -g -fPIC --coverage -Wall -fdiagnostics-show-option -fno-inline"
-DCMAKE_EXE_LINKER_FLAGS="--coverage"
- make -j8 | tee ../scalfmm-build.log
- OMP_NUM_THREADS=8 ctest -V
- cd ..
- lcov --directory . --capture --output-file scalfmm.lcov
- python $HOME/sonar/lcov-to-cobertura-xml-1.6/lcov_cobertura/lcov_cobertura.py scalfmm.lcov --output scalfmm-coverage.xml
- export SOURCES_TO_ANALYZE="Examples Src Tests UTests"
#- cppcheck -v -f --language=c++ --platform=unix64 --enable=all --xml --xml-version=2 --suppress=missingIncludeSystem -IBuild/Src ${SOURCES_TO_ANALYZE} 2> scalfmm-cppcheck.xml
- rats -w 3 --xml ${SOURCES_TO_ANALYZE} > scalfmm-rats.xml
sonar:
stage: sonar
dependencies:
- test
artifacts:
name: scalfmm_sonar
expire_in: 1 day
paths:
- sonar.log
script:
- /home/gitlab/sonar/sonar-scanner-2.9.0.670/bin/sonar-scanner -X -Dsonar.login=$(cat ~/.sonarqube-dev-token) > sonar.log
only:
- devel
sonar.host.url=https://hpclib-sed.bordeaux.inria.fr/sonarqube-dev
sonar.links.homepage=https://gitlab.inria.fr/solverstack/ScalFMM
sonar.links.scm=https://fpruvost@gitlab.inria.fr/solverstack/ScalFMM.git
sonar.links.issue=https://gitlab.inria.fr/solverstack/ScalFMM/issues
sonar.projectKey=scalfmm
sonar.projectName=Scalfmm
sonar.projectDescription=C++ library that implements a kernel independent Fast Multipole Method (LGPL+CeCILL-C)
sonar.projectVersion=devel
sonar.language=c++
sonar.sources=Examples, Src, Tests, UTests
sonar.sourceEncoding=UTF-8
sonar.cxx.includeDirectories=./Src/Core/, ./Src/Containers/, ./Src/Kernels/Interpolation/, ./Src/Kernels/P2P/, ./Src/Kernels/Taylor/, ./Src/Kernels/Chebyshev/, ./Src/Kernels/Spherical/, ./Src/Kernels/Rotation/, ./Src/Kernels/Uniform/, ./Src/Files/, ./Src/Arranger/, ./Src/BalanceTree/, ./Src/Utils/, ./Src/GroupTree/TestKernel/, ./Src/GroupTree/P2P/, ./Src/GroupTree/Core/, ./Src/GroupTree/StarPUUtils/, ./Src/GroupTree/Chebyshev/, ./Src/GroupTree/Cuda/, ./Src/GroupTree/Rotation/, ./Src/GroupTree/Uniform/, ./Src/GroupTree/OpenCl/, ./Src/Extensions/, ./Src/Components/, ./UTests/, ./Addons/CKernelApi/Src/, /usr/include/starpu/1.1, /usr/lib/openmpi/include, /usr/include, /usr/include/x86_64-linux-gnu, /usr/lib/gcc/x86_64-linux-gnu/5/include
sonar.cxx.compiler.charset=UTF-8
sonar.cxx.compiler.regex=^(.*):(\\d+):\\d+: warning: (.*)\\[(.*)\\]$
sonar.cxx.compiler.reportPath=scalfmm-build.log
sonar.cxx.coverage.reportPath=scalfmm-coverage.xml
#sonar.cxx.cppcheck.reportPath=scalfmm-cppcheck.xml
sonar.cxx.rats.reportPath=scalfmm-rats.xml
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment