From 6f87d6bb87794432d6a1db0b6572559d454ca487 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C3=ABl=20Minelli?= <michael@minelli.me>
Date: Tue, 27 Feb 2024 16:51:15 +0100
Subject: [PATCH] CI/CD => Add sonar integration

---
 .gitlab-ci.yml           | 20 ++++++++++++++++++++
 sonar-project.properties |  2 ++
 2 files changed, 22 insertions(+)
 create mode 100644 sonar-project.properties

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 80d804e..66b4797 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -89,6 +89,26 @@ code_quality:lint:
         - npm run lint
 
 
+code_quality:sonarqube:
+    stage: code_quality
+    tags:
+        - code_quality
+    image:
+        name: leadrien/isc-sonar-scanner-cli
+        entrypoint: [ "" ]
+    variables:
+        SONAR_USER_HOME: "${CI_PROJECT_DIR}/.sonar" # Defines the location of the analysis task cache
+        GIT_DEPTH: "0" # Tells git to fetch all the branches of the project, required by the analysis task
+    cache:
+        key: "${CI_JOB_NAME}"
+        paths:
+            - .sonar/cache
+    script:
+        - sonar-scanner
+    rules:
+        -   if: '$CI_COMMIT_TAG =~ "/^$/"'
+
+
 test:build:
     stage: test
     image: node:latest
diff --git a/sonar-project.properties b/sonar-project.properties
new file mode 100644
index 0000000..f59019d
--- /dev/null
+++ b/sonar-project.properties
@@ -0,0 +1,2 @@
+sonar.projectKey=DojoBackendAPI
+sonar.qualitygate.wait=true
\ No newline at end of file
-- 
GitLab