Я пытаюсь заставить плагин SonarQube работать с Jenkins. Я использую официальное руководство< /а>:
- Созданы глобальные учетные данные на Jenkins с секретным текстом с сервера Sonar: Администрирование -> Конфигурация -> Шифрование
- Настроил Jenkins и добавил наш сервер SonarQube и аутентификацию с 1.
- Включен параметр «Подготовить среду сканера SonarQube» в конфигурации задания.
- Добавлено
$SONAR_MAVEN_GOAL -Dsonar.host.url=$SONAR_HOST_URL -Dsonar.login=$SONAR_AUTH_TOKEN
к целям задания
Все это приводит к исключению:
Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.6.0.1398:sonar (default-cli) on project com.qualitype.foundation.build:
Not authorized. Please check the properties sonar.login and sonar.password.
Что я пытался исправить эту проблему:
- добавлены
sonar.login
иsonar.password
в pom.xml - добавлены
sonar.login
иsonar.password
в цели конфигурации задания - добавлены
sonar.login
иsonar.password
в MAVEN_OPTS конфигурации задания - все вышеперечисленное с токеном пользователя
sonar.login
(из Профиль -> Безопасность -> Токены) - заменил секретный текст учетных данных на вышеупомянутый токен
- все вышеперечисленное только без переменной (например, не
$SONAR_AUTH_TOKEN
, а фиксированное значение) - используя шаг после сборки «Анализ SonarQube с Maven»
Ни один из них не работает, все имеют одно и то же исключение. Что работает, так это просто вызвать sonar:sonar
и отключить «Подготовить среду сканера SonarQube», потому что наш pom.xml настроен именно так. В тот момент, когда я снова включаю «Подготовить среду сканера SonarQube», сборка завершается ошибкой.
Я надеялся, что информация Sonar будет отображаться в задании Jenkins, если я буду использовать официальный плагин вместо того, чтобы просто вызывать sonar:sonar
.
Как заставить подключаемый модуль Sonar работать с Jenkins?
Manage Jenkins → Configure System → SonarQube servers
(не забудьте нажать кнопкуAdvanced...
). - person agabrys   schedule 30.05.2019