Я использую
Следующий файл gitlab-ci.yaml используется:
image: java:8-jdk
before_script:
# - echo `pwd` # debug
# - echo "$CI_BUILD_NAME, $CI_BUILD_REF_NAME $CI_BUILD_STAGE" # debug
- export GRADLE_USER_HOME=`pwd`/.gradle
cache:
paths:
- .gradle/wrapper
- .gradle/caches
variables:
SONAR_URL: http://192.168.74.12:9000/
SONAR_TOKEN: <SONAR_TOKEN>
SONAR_PROJECT_KEY: sonarqube-scanner-gradle
SONAR_PROJECT_NAME: sonarqube-scanner-gradle
GITLAB_ACCESS_TOKEN: <GITLAB_ACCESS_TOKEN>
sonarqube_master_job:
stage: test
only:
- master
script:
- ./gradlew --debug :sonarqube
-Dsonar.login=$SONAR_TOKEN
-Dsonar.host.url=$SONAR_URL
-Dsonar.projectName=$SONAR_PROJECT_NAME
-Dsonar.projectKey=$SONAR_PROJECT_KEY
-Dsonar.gitlab.user_token="$GITLAB_ACCESS_TOKEN"
-Dsonar.gitlab.project_id=$CI_PROJECT_PATH
-Dsonar.gitlab.commit_sha=$CI_COMMIT_SHA
-Dsonar.gitlab.ref_name=$CI_COMMIT_REF_NAME
-Dsonar.analysis.mode=publish
sonarqube_preview_feature_job:
stage: test
only:
- /^task\/*/
script:
- git checkout origin/master
- git merge $CI_COMMIT_SHA --no-commit --no-ff
- ./gradlew --debug :sonarqube
-Dsonar.login=$SONAR_TOKEN
-Dsonar.host.url=$SONAR_URL
-Dsonar.projectName=$SONAR_PROJECT_NAME
-Dsonar.projectKey=$SONAR_PROJECT_KEY
-Dsonar.gitlab.user_token="$GITLAB_ACCESS_TOKEN"
-Dsonar.gitlab.project_id=$CI_PROJECT_PATH
-Dsonar.gitlab.commit_sha=$CI_COMMIT_SHA
-Dsonar.gitlab.ref_name=$CI_COMMIT_REF_NAME
-Dsonar.analysis.mode=publish
after_script:
- echo "End CI"
В задании gitlab У меня есть следующий журнал:
[INFO] [org.sonarqube.gradle.SonarQubeTask] АНАЛИЗ УСПЕШНЫЙ, вы можете просмотреть http://192.168.74.12: 9000 / dashboard? id = sonarqube-scanner -gradle
[INFO] [org.sonarqube.gradle.SonarQubeTask] Обратите внимание, что вы сможете получить доступ к обновленной панели мониторинга, как только сервер обработает отправленный отчет анализа
[ ИНФОРМАЦИЯ] [org.sonarqube.gradle.SonarQubeTask] Подробнее об обработке отчетов по http://192.168.74.12: 9000 / api / ce / task? Id = AXBXsJN8PnOJAFLW2U-H
In отчет об анализе SonarQube (../api/ce/task?id=AXBXsJN8PnOJAFLW2U-H) У меня есть это:
{
"task": {
"id": "AXBXsJN8PnOJAFLW2U-H",
"type": "REPORT",
"componentId": "AXBTqVrMTQSyj7kvwjzu",
"componentKey": "sonarqube-scanner-gradle",
"componentName": "sonarqube-scanner-gradle",
"componentQualifier": "TRK",
"analysisId": "AXBXsJPgfxhAM6VYdtgY",
"status": "SUCCESS",
"submittedAt": "2020-02-18T09:45:54+0000",
"submitterLogin": "admin",
"startedAt": "2020-02-18T09:45:54+0000",
"executedAt": "2020-02-18T09:45:57+0000",
"executionTimeMs": 2423,
"logs": false,
"hasScannerContext": true,
"organization": "default-organization",
"warningCount": 0,
"warnings": []
}
}
Однако обзорная доска проекта SonarQube дает мне другое изображение: * 10 37 *
Почему такая разница?
Как можно исправить это поведение, чтобы сбой при сборке основывался на значке Quality Gate, как, например, в SonarQube v. 7.5?