2017-01-12 6 views
0

Я использую GitLab с SonarQube, исполненный Дженкинсом. Я хочу, чтобы сообщения о слиянии не принимались, если SonarQube сообщил о каких-либо проблемах.Предотвращение приема запросов слияния на вопросы сонара

Любые идеи для Gitlab CE или EE?

+0

Как вы управляете SonarQube? –

+0

SonarQube будет запущен Jenkins – NoobieNoob

+0

Хорошо, в этом случае я предполагаю, что триггеры Gitlab запускают Jenkins и Jenkins. SonarQube –

ответ

1

Gitlab CI предлагает два способа предотвращения запросов слияния, если сборка завершилась неудачей или если есть неразрешенное обсуждение. Чтобы начать настройку плагина Jenkins после this tutorial. Теперь, когда у вас есть интеграция gitlab-jenkins-ci и триггеры gitlab, вы должны включить Only allow merge requests to be merged if the build succeeds в настройках проекта в gitlab и либо установить SonarQube build breaker plugin, либо использовать rest api.

Метод, не связанный с нарушением сборки, заключается в использовании gitlab SonarQube plugin, однако в настоящее время он не поддерживает комментарии к запросам слияния, поэтому вам придется либо модифицировать плагин, либо сделать обходной путь с помощью gitlab api.

+0

Я уже делаю это так. Дженкинс преуспевает, когда сбор maven и тесты были успешными. Результаты Sonarqube не будут рассматриваться. – NoobieNoob

+0

@NoobieNoob Итак, реальный вопрос - как провалить сборку Дженкинса, когда результаты SonarQube отрицательны? –

+0

Ну нет, было бы лучше отделить результаты Дженкинса и Сонарбеба. Дженкинс может успешно построить проект, но слияние должно быть заблокировано, потому что Sonarqube обнаружил какие-либо проблемы. – NoobieNoob