我创建了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 回答
您必须一起扫描所有来源 . 推送部分数据并附加它是不可能的 .
这意味着你可以这样做:
但你不能做这样的事情:
因为扫描程序的第二次执行会覆盖所有数据 .