用于 CodeCommit 存储库同步的 AWS Lambda

C.B*_*.B. 7 git bitbucket amazon-web-services aws-lambda

我想将我的 Bitbucket 存储库镜像到 CodeCommit 并从中构建,而不影响开发人员的工作流程。迁移很容易,现在的目标是将 CodeCommit 与 Bitbucket 同步,理想情况下,通过推送到 Bitbucket 触发,但基于时间的同步也是可以接受的。

我找到了这篇文章:https : //aws.amazon.com/blogs/devops/replicating-and-automating-sync-ups-for-a-repository-with-aws-codecommit/和未回答的问题在这里直接镜像 Git Repo到 AWS CodeCommit

请分享您如何编写 aws lambda 函数以将 CodeCommit 存储库与 Bitbucket 同步的想法。

小智 2

虽然我还没有尝试过,但我怀疑以下工作流程可以工作。总体思路是使用 BitBucket webhooks 功能通过 API 网关触发 lambda 函数。

  1. 编写一个 Lambda 函数,该函数从您的 bitbucket 存储库 URL 进行“镜像”克隆并推送到您的 CodeCommit 存储库 URL。您的函数可能需要包含自己的独立 git 客户端库。

  2. 使用 API 网关创建一个调用您的 lambda 函数的 API。这里的潜在挑战可能是验证发送到 API 的 POST 请求是否来自 Bitbucket,而不是其他来源。

  3. 为您的 Bitbucket 存储库创建一个新的 Webhook,其 URL 是您在步骤 2 中创建的 API 的 URL。“存储库推送”触发器足以在每次推送后触发复制事件。

  • 有趣,谢谢。您对使用 SNS 而不是 Gateway API 有何看法?使用:https://github.com/juhamust/bitbucket2sns? (2认同)