将新的 GitHub 提交实时排队到 Google Pub/Sub

Posted

技术标签:

【中文标题】将新的 GitHub 提交实时排队到 Google Pub/Sub【英文标题】:Enqueuing new GitHub Commits to Google Pub/Sub in Real-Time 【发布时间】:2021-11-10 12:58:41 【问题描述】:

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

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

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

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

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

【问题讨论】:

你探索过 webhook 吗:docs.github.com/en/developers/webhooks-and-events/webhooks/… 【参考方案1】:

您可以先镜像repository。通过这样做,“Cloud Source Repositories automatically syncs your repository with the mirrored repository when a user commits a change”。 然后,您可以设置云Pub/Sub notifications,并收到事件“RefUpdate”的通知。 最后,您的函数可以使用生成的 Pub/Sub 消息。

【讨论】:

嘿alcao758。我可以帮助您了解其他信息吗?如果您认为我的回答对您有帮助,请考虑采纳(✔️)。我真的很感激。谢谢!

以上是关于将新的 GitHub 提交实时排队到 Google Pub/Sub的主要内容,如果未能解决你的问题,请参考以下文章

将新的 Google 表格数据附加到 BigQuery 表中

有啥方法可以自动将新的 apk 上传到 Google Play?

将新的 Google 登录添加到 Android 应用程序后的 Proguard 混淆问题

markdown 从Google表单提交中创建一个新的GitHub问题

需要将新的Google Maps API KEY添加到我现有的Drupal7网站

如何将新的 firebase 项目连接到现有的 Google Analytics(而不是创建新的 GA 属性)