Мы проводим тесты статического анализа по двум пунктам:
- На Git pre-commit hook, и в этом случае мы используем движки phpcs, phpmd, stylelint и eslint (ванильные установки + Drupal Coder для добавления стандартов Drupal)
- Раз в неделю мы обновляем дашборд нашего проекта на SonarQube, который запускает следующие профили качества: Drupal (PHP), JS и SCSS.
Мы хотим привести наши стандарты в соответствие с единым стандартом, но использование разных движков делает это намного сложнее (или даже невозможно?). Я могу придумать несколько возможных способов добиться этого:
- Вручную выровняйте правила как для предварительной фиксации, так и для SonarQube.
- Используйте SonarQube для наших предварительных тестов
Я не уверен в этом, поскольку, глядя на стандарты Drupal в SonarQube, кажется, что там гораздо меньше правил, чем в стандартах Drupal PHPCS (от Drupal Coder) - соответствующий вопрос, который я нашел по этому поводу
(также еще один актуальный вопрос о согласование PHP-плагина SonarQube с phpCS ) - Создайте собственный плагин для SonarQube с установленными нашими движками (ни за что..)
Идеальное решение, на мой взгляд, состоит в том, чтобы SonarQube читал файлы правил (например, phpcs.dist.xml) в репозитории Git, как и большинство инструментов статического анализа.
Я также видел SonarQube и Сопоставление правил stylelint — это единственное сопоставление, которое я нашел для этих движков.
Как мы можем решить эту проблему самым простым способом?