SonarQube Plugin - Включение функциональности "Проблемы"
Объяснение:
Я разработал плагин, который просматривает проект на наличие XML-файлов с определенным именем и выполняет некоторую логику синтаксического анализа, которая определяет обратную совместимость изменений, внесенных в определенные подмножества кода проекта. Прямо сейчас у меня есть виджет на приборной панели sonarqube, который отображает информацию о количестве проблем, не совместимых с предыдущими, обнаруженных после проверки этих файлов XML.
Вопрос:
Я хотел бы включить функциональность в плагине, чтобы добавить XML-файлы, которые имеют флаг обратной совместимости, на вкладку "Проблемы" с установленным критическим уровнем серьезности. Надеемся, что разработчики в команде увидят, что эти проблемы будут добавлены к общему количеству ошибок, а не проверят только один виджет панели мониторинга. У меня есть класс Metrics, Sensor, Plugin и RubyWidget после расширения справочного плагина, а также мои собственные классы, которые добавляют функциональность поиска файлов и выполнения логики синтаксического анализа.
Есть ли класс, который я могу расширить, чтобы добавить эту новую проблему в счетчик проблем и предоставить пользователям возможность просматривать XML-файлы, чтобы увидеть описание самой проблемы?
Как я могу включить эту функцию? Благодарю.
1 ответ
Вы должны предоставить реализацию org.sonar.api.server.rule.RulesDefinition
и добавить свой класс к getExtensions()
метод вашего класса плагинов. С помощью датчика вы можете создавать "проблемы" в файлах проекта для определенных вами правил.
В качестве примера вы можете проверить, как пример плагина SonarQube определяет правило и создает проблемы для этого правила.