为什么GitHub检查不反映Azure管道构建状态?

为什么GitHub检查不反映Azure管道构建状态?,github,azure-devops,azure-pipelines,Github,Azure Devops,Azure Pipelines,我正在尝试将Azure管道配置添加到现有项目中,bundler/bundler。以下是添加配置的PR: 当其中一名维护人员在Azure Pipelines上设置了bundler/bundler项目时,此PR已经触发了一个构建: 请注意,构建有一个绿色复选标记,并标记为已完成 (还要注意的是,在构建中有大量测试失败,因为这以前没有在Windows上测试过。无论如何,为了使构建成功,在修复测试时,并非所有的PRs和提交都在Github上获得红色的“x”,我在测试命令的末尾添加了| | exit 0

我正在尝试将Azure管道配置添加到现有项目中,
bundler/bundler
。以下是添加配置的PR:

当其中一名维护人员在Azure Pipelines上设置了
bundler/bundler
项目时,此PR已经触发了一个构建: 请注意,构建有一个绿色复选标记,并标记为已完成

(还要注意的是,在构建中有大量测试失败,因为这以前没有在Windows上测试过。无论如何,为了使构建成功,在修复测试时,并非所有的PRs和提交都在Github上获得红色的“x”,我在测试命令的末尾添加了
| | exit 0
,这在Azure管道上可以正常工作)

Azure Pipelines的GitHub集成的一个功能是,构建结果通过一个名为“检查”的功能显示在GitHub中:

(公关页面的末尾还包括了一个简短版本:)

不幸的是,此检查没有反映Azure管道上的构建状态,仍然显示为“正在进行”:

你知道为什么GitHub检查不能反映Azure管道上的构建状态吗


更让我困惑的是,与Azure Pipelines的集成实际上在拉取请求中工作得很好(检查是否正确反映了构建状态),拉取请求是由Azure Pipelines在创建
bundler/bundler
项目时自动创建的:

但是:它也不可能是我在PR中创建的Azure Pipelines配置,因为同样的配置在我的fork中也可以正常工作:(请参见捆绑程序任务的绿色复选标记)。(另一方面:Azure管道根本没有使用Github的“检查”功能)

好问题。最可能的原因是Azure管道和GitHub之间的通信出现了一些故障。这非常罕见,但有时GitHub和Azure管道之间的webhook不会触发。没有办法解释为什么会发生这种事;这可能是双方的过错

不幸的是,无法重新发送未送达的webhook。你唯一的办法就是重建拉请求。如果您选择“重建”选项(在
菜单中):

然后一个新的构建将被排队,当它完成时,状态更新将被发送回GitHub。然后,将更新签入请求


一个不太可能(但绝对可能)的原因是Azure管道或GitHub中都存在bug。在这个特殊的例子中,将测试结果从Azure管道上传到测试用例管理器API的代码有一个bug


(感谢您报告此问题,我们很抱歉这里出现了一点问题,但我们很高兴能够解决此问题。)

我还就此联系了Microsoft Azure Pipelines支持部门,并打开了一份“事件报告”(由他们的推特帐户告知)。不幸的是,他们的“支持专家”的第一个回复与主题不符:/抱歉,您最初的回复没有什么帮助;重新查询构建应该可以工作,但是如果您仍然有任何问题,请随时在twitter(@ethomson)上给我发消息。谢谢@Edward Thomson的回答。不幸的是,我没有加入Azure Pipelines上的那个项目,也不会加入,因为我不是一名维护人员或捆绑机团队的成员——只是一个来自互联网的随机人,建议拉取请求。但是:我认为这不会有帮助。我创建了一个具有相同内容的新分支,并向存储库打开了一个新的Pull请求,它有着完全相同的问题:vs。因此我认为它可能最终与配置有关。(可能是
| |退出0
?)