У меня есть проект gradle и плагин sonarqube в моем проекте gradle. В настоящее время я использую jacoco для сбоя сборки, если покрытие кода ниже некоторого значения. Все это происходит локально, т. Е. Я делаю «чистую сборку», и сборка завершается неудачно, если покрытие кода меньше, чем, скажем, 80%, или если тестовый случай терпит неудачу.
Я хочу, чтобы моя сборка потерпела неудачу, если у меня возникла критическая проблема (ошибка сонара) в моем коде или если запах кода сонара. Это сделано для обеспечения качества кода еще до того, как разработчик решит зафиксировать свой код в git.
У нас есть сервер jenkins и сервер сонара, работающие удаленно, и интеграция работает нормально.
До сих пор я слышал о плагине взломщика кода, который я до сих пор не понял.
Существует ли скрипт gradle / groovy, который может либо извлекать условие качества ворот с удаленного компьютера, либо есть способ создать эти условия локально (не запуская sonarqube локально), скажем, в файле свойств или каком-либо скрипте groovy. Поэтому, когда мой анализ сонара будет завершен, задача выберет отчет об анализе сонара и извлечет метрики из отчета и завершит сборку локальной сборки, если критерии / условия совпадают.
Например У моих новых изменений кода есть критическая проблема, о которой сообщает sonar, поэтому прервите сборку.
Можно ли создать качественные ворота или правила для местного произношения в текстовом файле?
У кого-нибудь есть идеи?
Все, что я хочу сделать здесь, это запустить мою сборку gradle, как обычно, но она потерпит неудачу, если в моем коде возникнут проблемы с сонаром.