интеграция gitlab с sonarqube

У меня есть GitLab CE (v8.5 по крайней мере) установлен на моем сервере. Я хотел бы интегрировать его с sonarqube, чтобы запросы слияния отображали любые проблемы в разделе комментариев. Кто-нибудь успешно интегрировал эти 2 системы?

на данный момент только плагин sonarqube, который я нашел, следующий, но я не могу успешно интегрировать его с GitLab.

https://gitlab.talanlabs.com/gabriel-allaigre/sonar-gitlab-plugin

Я докер контейнер для гидролокатора (v5.5) и скопировал плагин в каталог расширений. Настроил пользовательский токен gitlab и uri gitlab на странице настроек плагина в sonarqube.

Я использую GitLab CI для непрерывной интеграции, и у меня есть следующее задание сборки для sonarqube (используя gradle)

sh gradlew sonarqube -Psonar.analysis.mode=preview -Psonar.issuesReport.console.enable=true 
  -Psonar.gitlab.commit_sha=$CI_BUILD_REF -Psonar.gitlab.ref_name=$CI_BUILD_REF_NAME 
  -Psonar.gitlab.project_id=$CI_PROJECT_ID

но, я не уверен, что после этого. Пара вопросов:

  1. что происходит, когда запрос на слияние еще не существует? В моем рабочем процессе git пользователи отправит запрос на слияние после того, как они закончат работу над своей веткой. Итак, как этот плагин узнает, какой запрос слияния для обновления?

  2. сейчас у меня sonarqube задач valiation набор быть запущена только на ветку master. Я думаю, что это тоже нужно будет изменить на пользовательские ветви, верно?

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

2 ответов


  • вы должны использовать -Dsonar.гитлаб... вместо -Psonar.гитлаб... так далее. (см.https://groups.google.com/forum#!тема/sonarqube / dx8UIkcz55c)
  • в новейшей версии плагина вы можете включить добавление комментария, когда проблема не найдена. Это помогает при отладке.

@1: комментарии будут добавлены к вашим коммитам, а затем появятся в разделе Обсуждения запроса на слияние

@2: мы проводим полный анализ на master и предварительный просмотр на любых ветках.


У меня была та же проблема, что и у вас. Комментарии не были показаны в Гитлаб Г-я сделал работу с двумя исправлениями:

  • убедитесь, что используется режим предварительного просмотра. Если это не так, проблемы не сообщаются в GitLab
  • для того, чтобы проблемы отображались как комментарии GitLab, они должны быть "новыми" проблемами. Если вы запустили анализ своего проекта перед тем, как нажать на GitLab, проблемы не будут считаться новыми SonarQube, и никакие комментарии не будут добавлены к Г-н

Если это не решит вашу проблему, попробуйте клонировать репозиторий плагинов, добавив трассировки в код (CommitIssuePostJob.java-это место для поиска), упакуйте банку с maven и разверните исправленную банку в свою установку гидролокатора. Вот как я увидел, что у меня нет новых вопросов для отчета.