Sonarqube v.4 TFS任务“发布分析结果”抛出错误“无法获取指标”

在TFS上,我无法运行“发布分析结果”以在TFS网页上发布质量门。 其他任务“准备SonarQube上的分析”和“运行代码分析”成功运行。

错误消息是:

[错误] [SQ]无法获取指标

[错误] [SQ]无法获取ID’FWK9NiOFibiMfA2L0BHo’的任务

尽管有错误消息,当我访问url http:// localhost:9000 / api / ce / task?id = FWK9NiOFibiMfA2L0BHo时,我得到一个带有任务信息的json响应。

似乎是SonarQube VSTS扩展的一个问题:

SonarQube扩展使用基本身份validation与SonarQube API端点进行通信,并将令牌用作用户名,密码用作null。 npm包’request’(至少是最新版本2.83.0),不允许空密码并返回’auth()收到的无效用户或密码’。

要修复它,密码应该设置为空字符串。

在SonarSource修复VSTS插件之前,您可以通过手动编辑VSTS构建计算机上的扩展来解决此问题。 要编辑的文件是: \_tasks\SonarQubePublish_291ed61f-1ee4-45d3-b1b0-bf822d9095ef\4.0.0\common\helpers\request.js

在第22行之后添加一个新行:

 options.auth.pass = ""; 

有关详细信息,请参阅此类似线程: 无法将SonarQube分析结果与VSTS Build Summary集成