В качестве хранилища артефактов мы используем Sonatype Nexus, настроенный с учетными данными в Jenkins, и он отлично работает.Теперь я пытаюсь заставить проект gradle работать как многоотраслевой конвейер jenkins с использованием gradlew, включая сканирование кода sonarqube.
Проблема: при использовании только свойства rootProjekt.name
в settings.gradle я получаю эту ошибку:
Что пошло не так: плагин [id: 'org.sonarqube', версия: '2.6.2'] не найден ни в одном из следующих источников:
Плагины Gradle Core (плагин не находится в пространстве имен 'org.gradle')
- Хранилища плагинов (не удалось разрешить артефакт плагина 'org.sonarqube: org.sonarqube.gradle.plugin: 2.6.2') Поиск в следующих репозиториях: Центральный репозиторий плагинов Gradle
Плагин sonarqube gradle обнаруживается при использовании веб-интерфейса Nexus, но не gradle внутри конвейера, похоже, он ищет только в хранилище плагинов Gradle Central.При использовании Settings.gradle следующим образом:
pluginManagement {
repositories {
maven {
url "http://nexushost/content/groups/public/"
}
}
}
rootProject.name = 'fooBar'
он работает как шарм.Как сказать gradle, что он всегда должен использовать хост nexus sonatype без необходимости настраивать его в settings.gradle для каждого задания?