为 GitLab CI 管道中的多个作业聚合 SonarQube Maven 分析

Aggregate SonarQube Maven analysis for multiple jobs in GitLab CI pipeline

我想知道如何为 GitLab CI 管道中的多个作业聚合 SonarQube Maven 分析。

我的 GitLab CI 管道在不同的作业(在同一阶段)中构建后端和前端组件。它们需要不同的构建环境,因此它们使用不同的图像。骨架:

build-backend:
  image: my-backend-image
  stage: build
  script:
    - mvn xyz verify
build-frontend:
  image: my-frontend-image
  stage: build
  script:
    - build-frontend

如果我将 Sonar 扫描添加到两个作业中,它们将在 SonarQube 上覆盖彼此的结果。因此,AFAIU 我需要

是否有我遗漏的更简单的解决方案?

将我之前的评论变成一个答案,以“解决”这个问题。

我们一直在工作中使用选项 3,对结果非常满意。我看到这种方法的三个主要优点:

  • 大大简化了实际扫描任务(在附加作业中)。
  • 它降低了对运行分析的环境的要求。所有必需的工件都由专门的构建作业生成。
  • 它减少了执行时间,因为 SQ 所需的工件已经存在。