Возможно ли добавить новые модули в существующий проект SonarQube? - PullRequest
0 голосов
/ 09 декабря 2018

Я создал задание Jenkins, которое будет запускать сканирование UT + SonarQube.Структура папок у меня есть модуль, в котором различные компоненты, на которых будет работать сканирование UT и Sonar.Структура папки: M1 / ​​M1_C1 M1 / ​​M1_C2 M1 / ​​M1C3

M2 / M2_C1 M2 / M2_C2

В коде я передаю свойства сонара, как показано ниже:

echo 'sonar.projectKey='M1.sonar > sonar-project.properties
echo 'sonar.projectName='M1 >> sonar-project.properties
echo 'sonar.projectVersion=1.0'

echo 'sonar.host.url='$SONAR_URL >> sonar-project.properties
echo 'sonar.login='$SONAR_CREDENTIAL >> sonar-project.properties
echo 'sonar.modules=module1' >> sonar-project.properties

echo 'module1.sonar.projectName='M1_C1 >> sonar-project.properties
echo 'module1.sonar.projectKey='M1_C1.sonar$COMPONENT_KEY >> sonar-project.properties
echo 'module1.sonar.sources='$SRC_DIR >> sonar-project.properties

Сейчаскогда я запускаю задания на всех компонентах, в рамках проекта M1 на панели инструментов сонара создается компонент M1_C1, но при следующем запуске M1_C1 удаляется и добавляется M1_C2.Подобный проект сбрасывается при каждом запуске.

Надеюсь, вы, ребята, поняли мою проблему.

Я хочу, чтобы все последующие добавили новые модули без удаления старых модулей.

Есть ли способ достичь вышеуказанного в SonarQube.

Спасибо

1 Ответ

0 голосов
/ 10 декабря 2018

Вы должны сканировать все источники вместе.Невозможно выдвинуть частичные данные и добавить их.

Это означает, что вы можете сделать что-то вроде этого:

# create sonar-project.properties
echo 'sonar.projectKey='M1.sonar > sonar-project.properties
echo 'sonar.projectName='M1 >> sonar-project.properties
echo 'sonar.projectVersion=1.0' >> sonar-project.properties
echo 'sonar.host.url='$SONAR_URL >> sonar-project.properties
echo 'sonar.login='$SONAR_CREDENTIAL >> sonar-project.properties
echo 'sonar.modules=module1,module2' >> sonar-project.properties
echo 'module1.sonar.projectName='M1_C1 >> sonar-project.properties
echo 'module1.sonar.projectKey='M1_C1.sonar$COMPONENT_KEY >> sonar-project.properties
echo 'module1.sonar.sources='$SRC_DIR >> sonar-project.properties
echo 'module2.sonar.projectName='M2_C1 >> sonar-project.properties
echo 'module2.sonar.projectKey='M2_C1.sonar$COMPONENT_KEY2 >> sonar-project.properties
echo 'module2.sonar.sources='$SRC_DIR2 >> sonar-project.properties
# execute scanner
sonar-scanner

, но вы не можете сделать что-то вроде этого:

# create sonar-project.properties
echo 'sonar.projectKey='M1.sonar > sonar-project.properties
echo 'sonar.projectName='M1 >> sonar-project.properties
echo 'sonar.projectVersion=1.0' >> sonar-project.properties
echo 'sonar.host.url='$SONAR_URL >> sonar-project.properties
echo 'sonar.login='$SONAR_CREDENTIAL >> sonar-project.properties
echo 'sonar.modules=module1' >> sonar-project.properties
echo 'module1.sonar.projectName='M1_C1 >> sonar-project.properties
echo 'module1.sonar.projectKey='M1_C1.sonar$COMPONENT_KEY >> sonar-project.properties
echo 'module1.sonar.sources='$SRC_DIR >> sonar-project.properties
# execute scanner
sonar-scanner

# create sonar-project.properties
echo 'sonar.projectKey='M1.sonar > sonar-project.properties
echo 'sonar.projectName='M1 >> sonar-project.properties
echo 'sonar.projectVersion=1.0' >> sonar-project.properties
echo 'sonar.host.url='$SONAR_URL >> sonar-project.properties
echo 'sonar.login='$SONAR_CREDENTIAL >> sonar-project.properties
echo 'sonar.modules=module2' >> sonar-project.properties
echo 'module2.sonar.projectName='M2_C1 >> sonar-project.properties
echo 'module2.sonar.projectKey='M2_C1.sonar$COMPONENT_KEY2 >> sonar-project.properties
echo 'module2.sonar.sources='$SRC_DIR2 >> sonar-project.properties
# execute scanner
sonar-scanner

Поскольку повторное выполнение сканера перезаписывает все данные.

...