【发布时间】:2022-11-10 01:42:11
【问题描述】:
我正在使用 GitLab CI/CD 管道来部署 Springboot 项目。我已将 SonarQube 集成到我的项目中。在我的 sonar-project.properties 文件中,我提到了 sonar.coverage.exclusions。但它没有正确排除。
下面是我的项目结构
测试服务
- 用户服务
- 异步服务
- 审计服务
因此,我在 Test-service 下添加了声纳属性文件,在该文件中我提到了声纳覆盖范围排除项,如下所示
sonar.coverage.exclusions=**/com/cadmium/async/business/config/*,**/com/cadmium/async/business/domain/*,**/com/cadmium/audit/business/config/*,**/com/cadmium/audit/business/domain/*,**/com/cadmium/user/business/config/*,**/com/cadmium/user/business/domain/*
并且在 gitlab-ci.yml 文件中,我指定了声纳作业,如下所示
Sonar_test:
stage: sonar
#when: manual
image: maven
script:
- mvn --batch-mode verify sonar:sonar -Dsonar.host.url=sonar-url -Dsonar.login=admin -Dsonar.password=admin -Denv="$PROFILE" -Dsonar.qualitygate.wait=true
问题是,当我运行管道时,它没有考虑我的 sonar.coverage.exclusions 列表,因此构建门由于覆盖而失败。
如果我在 gitlab.yml 文件中提到声纳排除列表,如下所示,它的工作正常
Sonar_test:
stage: sonar
#when: manual
image: maven
script:
- mvn --batch-mode verify sonar:sonar -Dsonar.host.url=sonar-url -Dsonar.login=admin -Dsonar.password=admin -Denv="$PROFILE" -Dsonar.coverage.exclusions=**/com/cadmium/async/business/config/*,**/com/cadmium/async/business/domain/*,**/com/cadmium/audit/business/config/*,**/com/cadmium/audit/business/domain/*,**/com/cadmium/user/business/config/*,**/com/cadmium/user/business/domain/* -Dsonar.qualitygate.wait=true
当我在 sonar-project.properties 文件中提到时,为什么它不考虑排除列表?
【问题讨论】:
标签: spring-boot maven sonarqube gitlab-ci