是否可以将AWS CodeBuild和CodePipeline结合起来构建描述的CI工作流程?

elg*_*ris 8 amazon-web-services aws-codepipeline

我要做的是使用标准AWS工具创建以下CI流:在创建或更新Github中的Pull Request时运行提交的构建.或者在我的命令上运行任何分支的构建.与Codeship,Travis和许多其他CI服务提供的非常相似.

是否可以使用CodeBuild + CodePipeline?我注意到我必须在CodePipeline中指定确切的分支,但遗憾的是,无法找到如何将Github Pull请求集成到其中.也许我忽略了它?

Cla*_*ori 5

如果您只是想将构建作为PR的一部分运行,CodeBuild现在直接支持构建GitHub拉取请求(无需Lambda中间步骤)。为了将CodePipeline作为PR的一部分运行更多步骤,您仍然需要设置其他支架,如其他答案所建议。 https://aws.amazon.com/about-aws/whats-new/2017/09/aws-codebuild-now-supports-building-github-pull-requests/


Dan*_*tor 2

看起来这可以通过使用 Lambda 和 S3 手动完成 - https://aws.amazon.com/blogs/devops/integrating-git-with-aws-codepipeline/

当提交被推送到存储库时,Webhooks 通过发出 HTTP POST 来通知远程服务。AWS Lambda 通过 Amazon API Gateway 接收 HTTP POST,然后下载存储库的副本。它将存储库的压缩副本放入版本控制的 S3 存储桶中。然后,AWS CodePipeline 可以使用 S3 中的 zip 文件作为源;每当 Git 存储库更新时都会触发管道。

  • 哦...太多的活动部件需要维护。不,谢谢,亚马逊,那么我宁愿坚持使用 Codeship :) (3认同)