2016-10-11 4 views
3

Я хотел бы начать анализ проекта Sonar с Jenkins 2.x Groovy Script Build Pipeline.Jenkins Script Pipeline Сонар Интеграция

Я гидролокатора настроен в Maven так то будет не большой сделки:

withEnv(["JAVA_HOME=${javaHome}", "PATH + MAVEN=${mavenHome}/bin:${env.JAVA_HOME}/bin", "MAVEN_OPTS=${mavenOpts}"]) { 
     sh 'mvn -B sonar:sonar' 
} 

Но как я могу получить результаты от сонара? Или еще лучше, как я могу определить, было ли достигнуто качество ворот, чтобы я мог остановить построение-конвейер.

Концепция строительного выключателя является устаревшей с некоторой версии гидролокатора, насколько я знаю. Или как вы справитесь с этим.

Я все еще думаю, что было бы неплохо остановить/приостановить сборку сборки, если исходный код проекта слишком плохой.

ответ

1

Не знаю, является ли это идеальным, но я получаю статус от SonarQube api с запросом (который вы можете сделать с плагином HttpRequest).

def response = httpRequest 'https://SONAR_USER:[email protected]_URL/api/qualitygates/project_status?projectKey=PROJECT_KEY' 
def slurper = new groovy.json.JsonSlurper() 
def result = slurper.parseText(response.content) 
if (result.projectStatus.status == "ERROR") { 
    currentBuild.result = 'FAILURE' 
} 
+0

ТНХ я не буду пытаться что –

+0

Пробовал и получил это: java.lang.NoSuchMethodError: Нет такого метода DSL «HTTPRequest» найден –

+0

@Lee Вы NEET установить HttpRequest плагин. –

Смежные вопросы