sonarqube - 使用一个 sonarqube 项目对不同微服务解决方案进行 SonarQube 分析
问题描述
我需要 3 个微服务(c#、dot net)来聚合来自这些服务的数据,然后根据需要在 UI 中显示值。我想在所有这 3 个微服务中配置 sonarqube。我有一个 sonarqube 项目名称“mysonarqube”。在所有微服务的 yaml 文件中,我添加了这个
-task: SonarQubePrepare@4
inputs:
SonarQube:'SonarQube Enterprise'
scannermode:'MSbuild'
projectKey: 'mysonarqube'
projectName:'microservice1'
每个服务解决方案中的项目名称分别替换为 microservice2、microservice3。在构建第一个微服务之后,我可以在 sonarqube 中看到微服务 1 分析,然后在构建第二个微服务 2 时,微服务 1 的第一个分析被微服务 2 替换。这是它的工作原理吗?
可以在一个项目中进行所有分析吗?如何在一个项目中拥有所有解决方案?还是我需要为每个微服务解决方案创建单独的 SonarQube 项目?
解决方案
该项目由其项目密钥标识。如果您对所有分析使用相同的密钥,它们将相互覆盖。如果您总是同时构建所有内容,您可以在准备和结束步骤之间构建它们,以便将所有文件收集到一个项目中。如果您单独构建/发布,明智的做法是创建和跟踪单独的 SonarQube 项目。
推荐阅读
- python - ImportError:没有名为 can 但根据 pip list 存在的模块
- swift - View Controller 找不到 func 成员
- javascript - GET 404(未找到)JavaScript 问题
- javascript - 如果它是某个字符,如何将最后一个字符包装在元素中?
- javascript - 仅当在视口中时如何使滑块起作用?
- javascript - 如何删除数组中的对象数组中的对象?
- java - Spring Boot 2.1 以调试模式启动根记录器,直到横幅打印?
- postgresql - Postgres“时区”在转换时不尊重山区标准时间
- wordpress - 如何添加按销售折扣过滤产品的 woocommerce 过滤器?
- deployment - 使用 Windows 兼容包部署 .NET Core 应用程序