是否可以导入SonarQube规则?

时间:2017-09-27 21:27:40

标签: sonarqube

我们将CI堆栈从咨询公司转移到内部。我们需要将SonarQube配置文件从顾问的SQ实例导出到我们的企业实例。我们可以导出配置文件,但顾问会创建数百个自定义规则,当我们尝试导入配置文件时,它无法导入自定义规则。我们在API中发现您可以将规则导出到JSON文件,但找不到有关如何导入它们的文档。

是否可以导入SonarQube规则?最好的方法是什么?

参考文件:
SQ文档 - 复制质量配置文件:
 https://docs.sonarqube.org/display/SONAR/Quality+Profiles#QualityProfiles-CopyaprofilefromoneSonarQubeinstancetoanother
StackOverflow - 如何导出规则:
 How to extract or export rules from SonarQube
SQ API - 规则:https://docs.sonarqube.org/pages/viewpage.action?pageId=2392166

2 个答案:

答案 0 :(得分:2)

任何试图在其本地设置上从服务器复制规则的人-

对于 sonarqube 社区版 8.7.1,您可以简单地将自定义规则导出为 XML 文件。 去 质量配置文件-> 齿轮图标-> 备份 这将为您提供 xml 文件格式的自定义规则。 enter image description here

然后在您的本地设置中转到 质量配置文件-> 恢复(右上角)- 选择您在上一步中下载的 XML 文件 enter image description here

答案 1 :(得分:1)

无法导入/导出这些自定义规则的逻辑,只能将其存在于配置文件中。

对于用Java编码的规则,您必须让它们至少为您提供包含规则实现的jar。安装该jar后(并重新启动服务器),您可以使用这些规则。

对于使用XPath编写的规则,您必须让它们为您提供XPath配置,并且您需要在您身边重新创建这些XPath规则(为每个规则填写一次表单的繁琐过程)