无论如何将sonarqube全局权限和配置加载为代码?

Posted

技术标签:

【中文标题】无论如何将sonarqube全局权限和配置加载为代码?【英文标题】:is there anyway to load sonarqube global permission and configuration as code? 【发布时间】:2021-03-15 14:24:39 【问题描述】:

我正在尝试使用 jenkins 制作更好的自动 ci,其中包含使用 sonarqube 进行代码扫描的阶段。

我用于安装和部署流动环境:

sonarqube v 7.9.x(来自官方 SQ docker hub 的 Docker 映像)- 人群插件 2.1.3 詹金斯 2.249.3 kubernetes 1.17

everythig 都很好并且效果很好,但是可能会发生令人讨厌的事情之一,当删除/新建 PVC 并丢失我在 sonarqube UI 中配置的实际配置时,特别是组/用户权限矩阵,例如:用户Quality Profiles/Gates 管理和执行分析的权限,如下图global permissions matrix。

为避免这种情况,最好的解决方案是从 git repo 加载此类配置(在 k8s 中,flux synchronized ), 我想知道是否有办法将此类配置定义为代码,而不仅仅是从 UI(我在 main sonar.properties 和 crowd plugin configraion 中搜索过,但没有任何帮助)

有人可以帮忙吗?

【问题讨论】:

在这种情况下,您可以使用 SonarQube 中的权限模板。 docs.sonarqube.org/latest/instance-administration/security @SouravAtta 是的,但我可以在部署 SQ direkt 期间每次将此类模板加载为文件(来自 git repo 或类似的东西) 创建权限模板后就可以使用sonarqube api了。 【参考方案1】:

没有选项可以将此类配置定义为代码并将其保存在 git repo 中。在这种情况下,最好的选择是将所有配置保存在任何类型的可用持久存储中(例如 kubernetes 中的 PVC)。

【讨论】:

以上是关于无论如何将sonarqube全局权限和配置加载为代码?的主要内容,如果未能解决你的问题,请参考以下文章

devops持续集成开发——jenkins的全局工具配置之sonar qube环境安装及配置

devops持续集成开发——jenkins的全局工具配置之sonar qube环境安装及配置

SonarQube 不会将 waitForQualityGate() 的状态返回给詹金斯?

SonarQube + Maven 进行代码分析

使用 sonar-runner 自动为 sonarqube 新项目报告应用自定义权限模板

如何去除sonarqube自动扫描