我们使用AWS CodeBuild分支过滤器选项仅在对PUSH进行主控时才触发构建。但是,“分支过滤器”选项最近已明显删除,并添加了“ Webhook事件过滤器组”。它们应该提供我期望的更多功能,但是我看不到如何制作“分支过滤器”。
有人可以帮忙吗?
答案 0 :(得分:3)
我看不到此更改被标记为任何地方,但对我来说,将事件类型设置为PUSH和HEAD_REF为
refs/heads/branch-name
按照
https://docs.aws.amazon.com/codebuild/latest/userguide/sample-github-pull-request.html
答案 1 :(得分:1)
您需要使用过滤器组,而不要使用Advanced
。
terraform(0.12+)中的示例;
对于功能分支;
Set as owner
对于branch_filter
分支。
resource "aws_codebuild_webhook" "feature" {
project_name = aws_codebuild_project.feature.name
filter_group {
filter {
type = "EVENT"
pattern = "PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED, PULL_REQUEST_REOPENED"
}
filter {
type = "HEAD_REF"
pattern = "^(?!^/refs/heads/master$).*"
exclude_matched_pattern = false
}
}
}
因此,它们每个都需要一个master
。因此,每个存储库将有2个CodeBuild项目。
resource "aws_codebuild_webhook" "master" {
project_name = aws_codebuild_project.master.name
filter_group {
filter {
type = "EVENT"
pattern = "PUSH"
}
filter {
type = "HEAD_REF"
pattern = "^refs/heads/master$"
exclude_matched_pattern = false
}
}
}
在CodeBuild中不起作用,尽管仍然可以通过UI或API对其进行配置。 aws_codebuild_project
是具有所需逻辑的。