【问题标题】:Can sonarqube gitlab plugin only scan changed filessonarqube gitlab插件可以只扫描更改的文件吗
【发布时间】:2019-02-20 23:25:10
【问题描述】:

我正在使用 gitlab-ci 管道,它将使用以下命令运行一个新的 docker 容器:

mvn --batch-mode verify sonar:sonar 
-Dsonar.analysis.mode=preview 
-Dsonar.gitlab.project_id=$CI_PROJECT_ID 
-Dsonar.gitlab.commit_sha=$CI_COMMIT_SHA 
-Dsonar.gitlab.only_issue_from_commit_file=true 
-Dsonar.gitlab.ref_name=$CI_COMMIT_REF_NAME 
-Dsonar.host.url=xxx 
-Dsonar.test.inclusions="/src/test/java/**/*.java" 
-Dsonar.login=xxx

我的项目变得很慢,几乎运行了 20 分钟。 我发现它会扫描所有文件而不是只扫描提交的文件。

我的配置有什么问题吗?

【问题讨论】:

    标签: maven sonarqube gitlab-ci sonarqube-scan


    【解决方案1】:

    在过去的一些 SonarQube 版本中,我们将预览模式更改为仅扫描更改的文件。但它有一些缺点,比如无法正确检测跨文件问题。

    在最近的 SonarQube 版本中,预览模式已弃用,有利于拉取请求分析。但即使是这个 PR 分析功能也在扫描所有文件,原因相同(跨文件问题、覆盖率测量、重复检测......)。

    我们不再尝试进行部分分析,而是尝试优化完整分析持续时间。你的项目有多大?与常规构建(编译 + 测试)相比,SonarQube 分析时间长吗?如果是,那么我建议您在SonarSource community forum 上报告您的情况。

    【讨论】:

      猜你喜欢
      • 2017-01-19
      • 2021-05-19
      • 2020-11-26
      • 2017-02-06
      • 1970-01-01
      • 2017-12-16
      • 2018-05-12
      • 1970-01-01
      • 2019-09-04
      相关资源
      最近更新 更多