Проблема с подключением Jenkins к SonarQube - PullRequest
0 голосов
/ 30 октября 2019

У меня есть конвейер Jenkins, который периодически извлекает из gitlab и создает различные репозитории, создает многокомпонентную платформу, запускает и тестирует ее. Теперь я установил сервер sonarqube на той же машине (Ubuntu 18.04) и хочу подключить свой Jenkins к sonarqube.

В Jenkins:

  • Я настроил сканер sonarqube на Global Tool Configuration как показано ниже: enter image description here
  • Я сгенерировал токен в sonarqube и в Jenkins на configuration Я настроил сервер, как показано ниже, НО я не смог найти место для вставкитокен (и я думаю, что это проблема): enter image description here
  • В конвейере Дженкинса я добавил сцену для sonarqube:
stage('SonarQube analysis') {
    steps{
        script {
            scannerHome = tool 'SonarQube';
        }
        withSonarQubeEnv('SonarQube') {
            sh "${scannerHome}/bin/sonar-scanner"
        }
    }
}

Но это не так с журналами ниже и ERROR: script returned exit code 127:

[Pipeline] { (SonarQube analysis)
[Pipeline] script
[Pipeline] {
[Pipeline] tool
Invalid tool ID 
[Pipeline] }
[Pipeline] // script
[Pipeline] withSonarQubeEnv
Injecting SonarQube environment variables using the configuration: SonarQube
[Pipeline] {
[Pipeline] sh
+ /var/lib/jenkins/tools/hudson.plugins.sonar.SonarRunnerInstallation/SonarQube/bin/sonar-scanner
/var/lib/jenkins/workspace/wws-full-test@tmp/durable-2c68acd1/script.sh: 1: /var/lib/jenkins/workspace/wws-full-test@tmp/durable-2c68acd1/script.sh: /var/lib/jenkins/tools/hudson.plugins.sonar.SonarRunnerInstallation/SonarQube/bin/sonar-scanner: not found
[Pipeline] }
WARN: Unable to locate 'report-task.txt' in the workspace. Did the SonarScanner succeeded?
[Pipeline] // withSonarQubeEnv
[Pipeline] }
[Pipeline] // stage

И когда я проверяю мои jenkinstools на диске, плагина sonnar нет:

$ ls /var/lib/jenkins/tools/
jenkins.plugins.nodejs.tools.NodeJSInstallation

Может кто-нибудь пожалуйстадайте мне знать, как я могу подключить Дженкинса к sonarqube?

1 Ответ

1 голос
/ 30 октября 2019

Создайте и добавьте токен для подключения к SonarQube.
Вы создали проект в SonarQube и используете его в качестве параметра:

sh """
   ${scannerHome}/bin/sonar-scanner \
   -Dsonar.projectKey=your_project_key_created_in_sonarqube_as_project \
   -Dsonar.sources=. \
"""
...