0

我正在尝试收听对我不拥有的公共 GitHub 存储库的新提交,并希望将新提交事件推送到 GCP Pub/Sub 以便函数可以进一步使用它。我认识到 GitHub 本身向给定存储库中的不同事件类型公开 RSS 提要,并且对我们如何有效地实时处理更改感到好奇。

这是我想到的两个类似的工作流程:

  1. 定期安排一项工作以提取 RSS 提要,根据我们已经看到和处理的内容检查新的更改,并将新鲜的内容加入队列。

  2. 分叉存储库,并与Cloud Repositories集成,这样我们就可以将更改通知排队。然后我们可以设置一个Fork Sync操作来定期同步分叉的 repo 本身(例如,每 2-5 分钟)。

我担心的是,我们经常在这两种方法中安排工作,如果我们进入完全没有变化的时期,这可能是不必要的并且可能会很昂贵。是否有更有效的方法可以触发处理而无需不断轮询更改?

4

1 回答 1

0

您可以先镜像存储库。通过这样做,“当用户提交更改时,Cloud Source Repositories 会自动将您的存储库与镜像存储库同步”。然后,您可以设置 Cloud Pub/Sub 通知,并获得事件“ RefUpdate ”的通知。最后,您的函数可以使用生成的 Pub/Sub 消息。

于 2021-09-18T02:33:35.513 回答