Правило SonarQube для запрета «запрещенных» файлов

Есть ли способ заставить SonarQube вызывать нарушение, если в исходном коде обнаружены определенные файлы/папки?

Например, файлы конфигурации с особыми именами, которые содержат конфиденциальные данные (например, пароли), не должны включаться в систему управления версиями, равно как и каталоги конфигурации, специфичные для IDE, такие как папки «.idea» IntelliJ и папки «.settings» Eclipse.

(Примечание: я знаю, что это может/должно быть частью глобального игнорирования в системе контроля версий, но это не то, о чем я спрашиваю)

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

Я читал о том, что плагины SonarQube могут быть написаны на Java, но это кажется такой простой концепцией (и я уверен, что она не уникальна), что я немного удивлен, что не смог найти любые существующие правила или плагины. Самое близкое, что я нашел, это sonar-text-plugin, хотя это фокусируется на содержимом файла, а не на том, существуют ли файлы вообще.

Прежде чем я начну изобретать велосипед, есть ли что-то уже существующее, что могло бы предложить это?

SonarQube версии 4.5.7 — возможно обновление, если нет другого пути.


person johnd    schedule 02.09.2016    source источник
comment
в любом случае я бы предложил обновить до 5.6.1 текущую LTS-версию SonarQube. Тогда вам будет доступна последняя версия наших анализаторов, которые серьезно прокачали свою игру : ) (да, я необъективен)   -  person Teryk - SonarSource    schedule 05.09.2016


Ответы (1)


Я подтверждаю, что в SonarQube нет такой встроенной функции.

Возможно, вы захотите написать пользовательское правило для подключаемого модуля Java.

person Freddy - SonarSource Team    schedule 05.09.2016
comment
Не тот ответ, на который я надеялся, но он не может быть более авторитетным, чем ответ от команды SonarSauce! Спасибо, парни. - person johnd; 06.09.2016