diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 718c8865ccf885071a3a9484cf77250e5a228371..2cb604e8a9ec33caf1ece4083af82d46d8449454 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,7 +1,6 @@
-image: hpclib/hiepacs
-
-before_script:
-  - source /usr/share/modules/init/bash && source /usr/local/share/spack/setup-env.sh && spack load cmake
+default:
+  tags: ['docker']
+  image: registry.gitlab.inria.fr/solverstack/docker/distrib
 
 variables:
   GIT_SUBMODULE_STRATEGY: normal
@@ -49,7 +48,7 @@ doc:
         -DSCALFMM_BUILD_DOC=ON
         -DCMAKE_C_COMPILER=gcc
         -DCMAKE_CXX_COMPILER=g++
-    - make doc 
+    - make doc
 
 pages:
   stage: pages
@@ -77,6 +76,7 @@ test:
     - (cd Build && OMP_NUM_THREADS=4 ctest --no-compress-output -VV -j 5 -D ExperimentalBuild -D ExperimentalTest -D ExperimentalCoverage -D ExperimentalSubmit)
 
 sonar:
+  when: manual
   stage: sonar
   dependencies:
     - test
@@ -94,5 +94,4 @@ sonar:
     - mv Build/scalfmm-build.log .
     - source ./Utils/scripts/analysis.sh
     - sonar-scanner |tee sonar.log;
-  only:
-    - master@solverstack/ScalFMM
+  allow_failure: true
diff --git a/Utils/scripts/analysis.sh b/Utils/scripts/analysis.sh
index 75c5827282298ad1e09778b33137488bd3cf2618..94404ed0e5224d9e8735e0e1a4903beba8665669 100755
--- a/Utils/scripts/analysis.sh
+++ b/Utils/scripts/analysis.sh
@@ -27,7 +27,7 @@ rats -w 3 --xml ${SOURCES_TO_ANALYZE} > scalfmm-rats.xml
 
 # create the sonarqube config file
 cat > sonar-project.properties << EOF
-sonar.host.url=https://sonarqube.bordeaux.inria.fr/sonarqube
+sonar.host.url=https://sonarqube.inria.fr/sonarqube
 sonar.login=$SONARQUBE_LOGIN
 sonar.links.homepage=https://gitlab.inria.fr/solverstack/ScalFMM
 sonar.links.scm=https://fpruvost@gitlab.inria.fr/solverstack/ScalFMM.git
@@ -36,13 +36,15 @@ sonar.projectKey=hiepacs:scalfmm:gitlab:develop
 sonar.projectDescription=C++ library that implements a kernel independent Fast Multipole Method (LGPL+CeCILL-C)
 sonar.projectVersion=2.0
 sonar.language=c++
+sonar.lang.patterns.c++=**/*.cpp,**/*.hpp
+sonar.lang.patterns.c=**/*.c,**/*.h
 sonar.sourceEncoding=UTF-8
 sonar.sources=Examples, src, Tests, UTests
 sonar.exclusions=include/Kernels/FKernelConcepts.hpp, Tests/noDist/PerfTest/TestDriver.hpp
-sonar.cxx.includeDirectories=$(echo | gcc -E -Wp,-v - 2>&1 | grep "^ " | tr '\n' ',')Build/include, include
-sonar.cxx.compiler.charset=UTF-8
-sonar.cxx.compiler.regex=^(.*):(\\\d+):\\\d+: warning: (.*)\\\[(.*)\\\]$
-sonar.cxx.compiler.reportPath=scalfmm-build.log
+sonar.cxx.includeDirectories=$(echo | gcc -E -Wp,-v - 2>&1 | grep "^ " | tr '\n' ',')Build/include, include, /usr/lib/x86_64-linux-gnu/openmpi/include
+sonar.cxx.gcc.charset=UTF-8
+sonar.cxx.gcc.regex=(?<file>.*):(?<line>[0-9]+):[0-9]+:\\\x20warning:\\\x20(?<message>.*)\\\x20\\\[(?<id>.*)\\\]
+sonar.cxx.gcc.reportPath=scalfmm-build.log
 sonar.cxx.coverage.reportPath=scalfmm-coverage.xml
 sonar.cxx.rats.reportPath=scalfmm-rats.xml
 sonar.cxx.cppcheck.reportPath=scalfmm-cppcheck.xml