diff --git a/.gitignore b/.gitignore
index c456a80821c8f4704b4a061f397da23ed87dc1df..0648667bdb50f03dbf8151eff52f71c863b4bcf7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -269,3 +269,4 @@ gradle-app.setting
 **/build/
 
 # End of https://www.gitignore.io/api/gradle,eclipse,intellij,visualstudiocode,kotlin,git,macos,linux
+frontend/package-lock.json
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index eccc3a3761667f6457fcea42c9dd1242b307347a..9155ac05de869f541bc4d42db9a8aa56723a5504 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -19,6 +19,7 @@ variables:
   GRADLE_USER_HOME: $CI_PROJECT_DIR/.gradle
   APP_NAME: faidare
   JAR_PATH: "backend/build/libs/${APP_NAME}.jar"
+  GIT_DEPTH: 0
 
 
 # Gradle cache for all jobs
@@ -61,17 +62,29 @@ test-and-sonarqube:
       command: ["bin/elasticsearch", "-Ediscovery.type=single-node"]
   variables:
     GRADLE_OPTS: "-Dorg.gradle.daemon=true"
+    SONAR_BRANCH_OPTS: "-Dsonar.pullrequest.key=$CI_MERGE_REQUEST_ID -Dsonar.pullrequest.branch=$CI_COMMIT_REF_NAME"
   script:
     - ./gradlew :frontend:test --parallel
     - ./gradlew :backend:test --parallel
     - find /tmp/node/*/bin -name node -exec ln -s {} /tmp/node/node \;
     - export PATH="/tmp/node/:$PATH"
-    - ./gradlew sonarqube -x test
+    - ./gradlew sonarqube -x test $SONAR_BRANCH_OPTS
   artifacts:
     reports:
       junit:
         - ./backend/build/test-results/test/TEST-*.xml
         - ./frontend/karma-junit-tests-report/TEST*.xml
+  only:
+    - merge_requests
+
+
+test-and-sonarqube-master:
+  extends: test-and-sonarqube
+  variables:
+    SONAR_BRANCH_OPTS: ""
+  only:
+    refs:
+      - master
 
 
 # BUILD
diff --git a/frontend/package.json b/frontend/package.json
index 58f4b9a5d8b581571dde422b26006a8fe6bc672f..ede9a6cce54a2b3f8b4d7139a8847be390f2e426 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -61,7 +61,6 @@
     "karma-jasmine": "3.1.1",
     "karma-jasmine-html-reporter": "1.5.3",
     "karma-junit-reporter": "2.0.1",
-    "ngx-speculoos": "3.0.0",
     "ngx-speculoos": "1.1.0",
     "protractor": "5.4.1",
     "ts-node": "7.0.1",
diff --git a/gradle.properties b/gradle.properties
index 4ce5f43071019d0faad8786c5f3e4fe7d3d8f7f7..defb0116def0ce6838c50bbdd3a2038e973d20ef 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -1,8 +1,4 @@
 # gradle.properties
-systemProp.sonar.host.url=https://urgi.versailles.inrae.fr/sonarqube
-
-#----- Token generated from an account with 'publish analysis' permission
-systemProp.sonar.login=94f359749d72f13d1e1a407521a8dd57c71ba562
 
 systemProp.sonar.sources=frontend/src
 systemProp.sonar.language=typescript