Как работает sonarqube - Часть 2 - PullRequest
0 голосов
/ 15 марта 2019

Я создаю это как дополнительный вопрос к этому оригинальному: Как работает sonarqube

Повторим для простоты чтения, это оригинальный вопрос:

У меня вопрос, как анализ происходит в sonarqube.когда я делаю mvn sonar: sonar -Dsonar.host.url = http://sonar.com что будет происходить в фоновом режиме.я чувствовал, что это

Maven будет использовать некоторые плагины и общаться с сервером sonarqube. Загрузите все правила, которые есть на сервере sonarqube, в месте, где мы запускаем mvn sonar: sonar. Анализ исходного кода с использованием набора правил, загруженных из sonarqube.сервер отправляет его обратно в базу данных SonarQube, и результаты будут отображаться на сервере SonarQube. Это правильный способ работы?или исходный код попадет на сервер sonarqube, а анализ будет выполнен на самом сервере sonarqube?

Ниже приведен ответ от G.Энн - команда SonarSource , которая фактически направила меня для публикации этого совершенно нового вопроса вместо того, чтобы комментировать там:

Вы в основном правильно поняли:

Maven будет использовать некоторые плагиныи общение с сервером SonarQube. Загрузите все правила, которые есть на сервере SonarQube, в месте, где мы запускаем mvn sonar: sonar. Анализ исходного кода с использованием набора правил, загруженных с сервера SonarQube. Рассчитать метрики на уровне файлов.составить отчет и отправить его обратно на сервер SonarQube. Сервер извлекает загруженный отчет из очереди и интегрирует его, сохраняя проблемы и вычисляя метрики высокого уровня. Пользователь видит обновленное состояние проекта на домашней странице проекта

И вот мои дополнительные вопросы к ответу выше :

1- Правила сонара извлекаются с сервера, а код анализируется на другом сервере (место, где мы запускаем sonar: sonar).Это не наоборот?Код не загружен ДО сервера sonarqube?Когда я смотрю на нарушения правил в пользовательском интерфейсе сонара, я вижу код внутри самого сонара.Как это происходит?

2 - если правила загружаются на другой сервер, то этот сервер должен иметь правильный код?Как проводится анализ?Нужен ли нам агент на этом «другом» сервере, на который загружаются правила?

3- Во время анализа запрашиваются данные с сервера, анализируются файлы, предоставленные для анализа, и результирующие данныев конце отправляется обратно на сервер в виде отчета, который затем асинхронно анализируется на стороне сервера (docs.sonarqube.org/latest/analysis/overview).Какие запрашиваемые (а затем проанализированные) и отправленные обратно данные здесь?Кто запрашивает данные?Сервер, на котором мы запускаем сонар: сонар?(PS: сонар версии 6.5 здесь)

Спасибо большое !!

...