Merge branch 'feat/sonar-test' into 'master'

Feat sonar 8

See merge request gilden/ci/gitlab-ci-templates!67
This commit is contained in:
Marcel Feix 2022-05-25 13:44:19 +00:00
commit f8454835d0
3 changed files with 64 additions and 1 deletions

View File

@ -1,6 +1,6 @@
:sourcedir: ../../../ :sourcedir: ../../../
= sonar-template = Sonar 7 template
Ruft den Sonar Job für das Projekt auf. Ruft den Sonar Job für das Projekt auf.
Mehr Details zu finden hier: https://gitlab.exxcellent.de/gilden/ci/exxcellent-sonar-tool[Gilde CI/CD: exxcellent-sonar-tool]. Mehr Details zu finden hier: https://gitlab.exxcellent.de/gilden/ci/exxcellent-sonar-tool[Gilde CI/CD: exxcellent-sonar-tool].

View File

@ -0,0 +1,28 @@
:sourcedir: ../../../
= Sonar 8 template
Ruft den Sonar Job für das Projekt auf.
Mehr Details zu finden hier: https://gitlab.exxcellent.de/gilden/ci/exxcellent-sonar-tool[Gilde CI/CD: exxcellent-sonar-tool].
.Variables
|===
|Name |Description | Default Value
|SONAR_HOST_URL | Die URL des eXXcellent sonar servers | https://sonar.exxcellent.de/sonar8
|SONAR_PROJECT_KEY | Der Sonar-Projekt-Key. | ""
|SONAR_PROJECT_NAME | Der Sonar-Projekt-Name. | "" (Es wird dann standardmäßig der Maven project.name verwendet)
|SONAR_EXCLUSIONS | Von Sonar auszuschließende Bereiche | **/target/**,**/src/test/**
|GRADLE_CLI_OPTS | Zusätzliche CLI Opts für Gradle | ""
|SONAR_QUALITYGATE_WAIT | Definiert, ob auf das Quality-Gate gewartet werden soll. Muss auf True gesetzt werden damit das Quality gate beachtet wird. Wenn das Quality-Gate beachtet werden aber die Pipeline nicht Fehlschlagen soll empfehlen das Flag `allow_failure` auf `true` zu setzen. | true
|SONAR_QUALITYGATE_TIMEOUT | Zeit bis zum Timeout der Quality gate abfrage | 10000
|===
TIP: Der SONAR_TOKEN String kann über den persönlichen User Bereich in Sonar unter dem Tab _Security_ erzeugt werden.
Ein technischer User ist aktuell nicht möglich.
.sonar-template
[source,yaml]
----
include::{sourcedir}/tool-sonar8.gitlab-ci.yml[]
----

35
tool-sonar8.gitlab-ci.yml Normal file
View File

@ -0,0 +1,35 @@
.sonar-template-common:
stage: test
variables:
SONAR_HOST_URL: https://sonar.exxcellent.de/sonar8
SONAR_PROJECT_KEY: ""
SONAR_PROJECT_NAME: ""
SONAR_EXCLUSIONS: "**/target/**,**/src/test/**"
SONAR_QUALITYGATE_WAIT: "true"
SONAR_QUALITYGATE_TIMEOUT: "10000"
.sonar-template:
extends: .sonar-template-common
image: $MAVEN_IMAGE
script:
- mvn $MAVEN_CLI_OPTS test sonar:sonar
"-Dsonar.host.url=$SONAR_HOST_URL"
"-Dsonar.login=$SONAR_TOKEN"
"-Dsonar.projectKey=$SONAR_PROJECT_KEY"
"-Dsonar.projectName=$SONAR_PROJECT_NAME"
"-Dsonar.exclusions=$SONAR_EXCLUSIONS"
"-Dsonar.qualitygate.wait=$SONAR_QUALITYGATE_WAIT"
"-Dsonar.qualitygate.timeout=$SONAR_QUALITYGATE_TIMEOUT"
.sonar-template-gradle:
extends: .sonar-template-common
image: $GRADLE_IMAGE
script:
- ./gradlew $GRADLE_OPTS $GRADLE_CLI_OPTS sonarqube
"-Dsonar.host.url=$SONAR_HOST_URL"
"-Dsonar.login=$SONAR_TOKEN"
"-Dsonar.projectKey=$SONAR_PROJECT_KEY"
"-Dsonar.projectName=$SONAR_PROJECT_NAME"
"-Dsonar.exclusions=$SONAR_EXCLUSIONS"
"-Dsonar.qualitygate.wait=$SONAR_QUALITYGATE_WAIT"
"-Dsonar.qualitygate.timeout=$SONAR_QUALITYGATE_TIMEOUT"