重新导入导出的质量配置文件似乎失去了规则

时间:2015-10-07 16:01:22

标签: sonarqube sonarqube5.1

我正在尝试使用自定义质量配置文件设置Dockered Sonarqube,以便在开发人员计算机上使用。已经有一个中央服务器,但它是一个非常老的版本,我们希望开发人员有一个本地实例来检查他们的代码在分支机构工作时(中央声纳只看Git master,所以错误只会显示合并后起来)。整体计划是建立一个GoCD管道,在规则XML的提交中,它会选择它们并构建一个全新的Docker镜像供本地使用。

到目前为止采取的步骤:

  • 登录旧(3.6.1)Sonarqube并导出规则
  • 启动干净的Sonarqube泊坞窗(sonarqube:5.1)并导入规则
  • 现在有很多已弃用的规则,所以请仔细检查并替换新规则。这也消除了一些重复,这很好。

现在对于奇怪的部分/问题:在完成上述操作后,我留下了包含211规则的5.1声纳质量配置文件。当我在'< rule>'上导出这些和grep时有211个标签,所以看起来他们都在那里。 然而,当我开始另一个干净的sonarqube:5.1图像并使用curl POST重新导入我刚刚创建的xml时,我只看到控制台中报告的106条规则;导出它们会给我留下一个包含106'< rule>'的文件标签

我不确定,但两个导出的XML文件的快速差异看起来像显示checkstyle和pmd repositoryKeys可能会丢失。

如果有人对这里发生的事情有任何指示,他们会非常欢迎,因为我在这一点上有点难过(而且我太近了......)

1 个答案:

答案 0 :(得分:0)

首先,您可以考虑使用SonarLint,它可以在3个IDE中即时检查,而无需连接到服务器(因此它在分支上工作正常)!

但是它使用默认配置文件运行,所以如果它没有为您执行此操作:

默认情况下,SonarQube不再附带CheckStyle和PMD插件,这就是为什么缺少这些规则的原因。

绝大多数CheckStyle和PMD规则已经在新版本的Java插件中被替换,所以我建议的是:

  • 旋转新的5.1
  • 安装Checkstyle& PMD插件
  • 从3.6服务器导入配置文件
  • 使用界面替换已弃用的ChechStyle& PMD规则及其Java插件替换
  • 决定你可以在没有未替代的剩余部分的情况下生活;)
  • 导出更新的配置文件并使用 it 为您的Docker镜像播种