SonarQube Дженкинс просит логин и пароль - PullRequest
0 голосов
/ 01 июня 2018

Я пытаюсь проанализировать свой проект maven через конвейер jenkins.

Я настроил свой экземпляр сервера SonarQube в глобальных настройках Jenkins с авторизованным токеном и URL-адресом сервера.

Ниже приведен Groovy.скрипт в моем jenkinsfile:

stage('SonarQube analysis') {
            tools {
                   jdk "jdk-8u152"
                }
            steps {
                withSonarQubeEnv('My Sonar') {
                    sh 'mvn org.sonarsource.scanner.maven:sonar-maven-plugin:3.2:sonar -Dsonar.login=XXXXXXXXX'
                }
            }
        }

Когда я строю свой проект с использованием jenkins, я получаю следующую ошибку:

[ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.2:sonar (default-cli) on project MyProject: Not authorized. Please check the properties sonar.login and sonar.password.

Я думаю, этого достаточно для анализа проекта.Не совсем уверен, что мне не хватает!

1 Ответ

0 голосов
/ 01 июня 2018

Хорошо, я нахожусь на SonarQube 7.1, и вот как я это сделал:

  1. Создайте нового пользователя на сервере SonarQube.Перейдите в Администрирование -> Безопасность -> Пользователи -> Создать пользователя.Добавьте логин и имя и добавьте пароль.

enter image description here

  1. Теперь войдите в систему как вновь созданный пользователь, используя имя пользователя и пароль.Нажмите в правом верхнем углу и нажмите «Моя учетная запись» -> вкладка «Безопасность».Введите имя токена (например, «Jenkins-Token») и нажмите «Создать токен».Сохраните этот токен.

enter image description here

Перейдите к своему проекту SonarQube -> Администрирование -> Разрешения. Я предполагаю, что ваш проект является частным.Найдите вышеупомянутого пользователя, которого вы добавили, и добавьте права доступа (предоставьте разрешение на выполнение анализа).

enter image description here

  1. Иди к своему инстансу Дженкинса.Нажмите на Управление Дженкинс -> Настроить систему.Прокрутите вниз до раздела «Сервер SonarQube», либо добавьте новый сервер, либо отредактируйте существующий сервер, чтобы добавить сгенерированный токен в поле «Токен аутентификации сервера».enter image description here

  2. В сценарии конвейера вызовите конкретный экземпляр сервера sonarqube, который вы добавили на предыдущем шаге, и передайте нужные параметры в командной строке.Я не передавал токен аутентификации в командной строке, так как он уже настроен в сведениях о сервере sonarqube в enter image description here

...