我有一个存储在GitHub上的monoreo,其中包含几个子项目(微服务(。我正在尝试使用AWS CodePipeline和CodeBuild的组合来构建它。我想根据更改的子项目启动管道。例如,如果service-1
文件夹中的文件发生更改,我希望运行service-1管道,而不希望运行service-2
或service-3
的构建。
在Google Cloud Build中,有可能指定";包含的文件";以及";被忽略的文件";。我正试图在AWS中找到完全相同的东西。
问题:如何指定将触发CodePipleine构建的文件/文件夹更改?
就像AWS中的许多服务一样,您必须自己构建它。有一篇关于如何自定义触发器的博客文章。它大致由以下部分组成:
- 创建一个CW事件规则,该规则在代码提交回购更新时触发lambda
- 在上述lambda中编写适合您用例的逻辑
- lambda最终会发出自定义CW事件
- 将管道配置为基于自定义事件负载触发
文章位于:https://aws.amazon.com/blogs/devops/adding-custom-logic-to-aws-codepipeline-with-aws-lambda-and-amazon-cloudwatch-events/