我正在 VSTS 中使用准备、运行和发布分析任务来运行 SonarQube 分析并发布结果以构建摘要。前两个步骤成功执行,但“发布分析”任务失败,因为它无法获取分析 ID 的任务。我收到以下错误消息:
无法获取 ID 'AWE9-wu8-fbfJflhFQ3-' 的任务
VSTS 发布分析任务日志:
2018-01-28T18:15:28.1037139Z ##[debug][SQ] Waiting for task 'AWE9-wu8-fbfJflhFQ3-' to complete.
2018-01-28T18:15:28.1037139Z ##[debug][SQ] API GET: '/api/ce/task' with query "{"id":"AWE9-wu8-fbfJflhFQ3-"}"
2018-01-28T18:15:28.1047138Z ##[debug][SQ] Publish task error: [SQ] Could not fetch task for ID 'AWE9-wu8-fbfJflhFQ3-'
2018-01-28T18:15:28.1047138Z ##[debug]task result: Failed
2018-01-28T18:15:28.1047138Z ##[error][SQ] Could not fetch task for ID 'AWE9-wu8-fbfJflhFQ3-'
2018-01-28T18:15:28.1047138Z ##[debug]Processed: ##vso[task.issue type=error;][SQ] Could not fetch task for ID 'AWE9-wu8-fbfJflhFQ3-'
2018-01-28T18:15:28.1047138Z ##[debug]Processed: ##vso[task.complete result=Failed;][SQ] Could not fetch task for ID 'AWE9-wu8-fbfJflhFQ3-'
2018-01-28T18:15:28.3907147Z ##[section]Finishing: Publish Analysis Result
我遇到了与 Vignesh 完全相同的问题。运行 SonarQube 6.7.1 和最新版本的 VSTS SonarQube 扩展。
我发现了问题所在;它位于 SonarQube VSTS 扩展(准备、分析和发布)中。
SonarQube 扩展使用基本身份验证与 SonarQube API 端点进行通信,并使用令牌作为用户名,密码为 null。
npm 包“请求”(至少最新版本 2.83.0)不允许空密码并返回“auth() 收到无效的用户或密码”。
要修复此问题,密码应设置为空字符串。
在 SonarSource 修复 VSTS 插件之前,您可以通过在 VSTS 构建计算机上手动编辑扩展来解决该问题。要编辑的文件是:<build location>\_tasks\SonarQubePublish_291ed61f-1ee4-45d3-b1b0-bf822d9095ef\4.0.0\common\helpers\request.js
在第 22 行之后添加新行:
options.auth.pass = "";
最终结果应该是这样的:
var options = {
auth: endpoint.auth
};
if (query) {
options.qs = query;
options.useQuerystring = true;
}
options.auth.pass = "";
request.get(__assign({ method: 'GET', baseUrl: endpoint.url, uri: path, json: true }, options), function (error, response, body) {
我不提供任何保证,但这对我有用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)