从 Github 部署状态 webhook 获取相应的 PR

Get corresponding PR from Github deployment status webhook

我正在创建一个 Github 应用程序来侦听 deployment_status.created webhook 事件。自动部署 PR 时会触发 webhook(使用第 3 方 Github 应用程序)。

当部署处于某种状态时,例如成功,我要在对应的PR中添加评论

我的示例代码:

app.on('deployment_status.created', async (context) => {
    const deployment_status = context.payload.deployment_status

    if (deployment_status.state === 'success') {
      // TODO: comment on the corresponding PR
    }
  })

如何获得对应的PR?

注意。有效负载中似乎没有任何内容 (https://docs.github.com/en/developers/webhooks-and-events/webhook-events-and-payloads#deployment_status)

正如您指出的那样,deployment_status 有效负载似乎没有提供拉取请求 URL 或 id,因此您可以直接 post 发表评论。

我认为可用的是有效载荷中的refshahttps://github.com/octokit/webhooks/blob/6a8fec1a9e76780bba12b75291be104a1697d300/schema.d.ts#L1774-L1775

有了这些你可以列出我认为相关的 PR:https://docs.github.com/en/rest/reference/repos#list-pull-requests-associated-with-a-commit

我仍然不知道这是否是最好的解决方案。

我邀请您在 https://github.com/octokit/rest.js/discussions/categories/q-a 中 post 这个问题(并寻找潜在的现有问题)我认为您会在那里得到更快的反馈。