Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

Filtrar eventos de webhook do GitHub (SDK)

Modo de foco
Filtrar eventos de webhook do GitHub (SDK) - AWS CodeBuild

Para usar o SDK do AWS CodeBuild para filtrar eventos de webhook, use o campo filterGroups na sintaxe de solicitação dos métodos de API CreateWebhook ou UpdateWebhook. Para obter mais informações, consulte WebhookFilter na Referência da API do CodeBuild.

Para obter mais informações sobre os eventos de webhook do GitHub, consulte Eventos de webhook do GitHub.

Para criar um filtro de webhook que acione uma compilação apenas para solicitações pull, insira o seguinte na sintaxe de solicitação:

"filterGroups": [ [ { "type": "EVENT", "pattern": "PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED, PULL_REQUEST_REOPENED, PULL_REQUEST_MERGED, PULL_REQUEST_CLOSED" } ] ]

Para criar um filtro de webhook que acione uma compilação apenas para ramificações especificadas, use o parâmetro pattern para especificar uma expressão regular a fim de filtrar os nomes da ramificação. Usando um exemplo de dois grupos de filtros, uma compilação será acionada quando um ou ambos forem avaliados como verdadeiro:

  • O primeiro grupo de filtros especifica as solicitações pull que são criadas, atualizadas ou reabertas nas ramificações com nomes de referência do Git que correspondam à expressão regular ^refs/heads/main$ e referências head que correspondam a ^refs/heads/myBranch$.

  • O segundo grupo de filtros especifica solicitações push em ramificações com nomes de referência do Git que correspondam à expressão regular ^refs/heads/myBranch$.

"filterGroups": [ [ { "type": "EVENT", "pattern": "PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED, PULL_REQUEST_REOPENED" }, { "type": "HEAD_REF", "pattern": "^refs/heads/myBranch$" }, { "type": "BASE_REF", "pattern": "^refs/heads/main$" } ], [ { "type": "EVENT", "pattern": "PUSH" }, { "type": "HEAD_REF", "pattern": "^refs/heads/myBranch$" } ] ]

Você pode usar o parâmetro excludeMatchedPattern para especificar quais eventos não acionam uma compilação. Por exemplo, um compilação é acionada para todas as solicitações, com exceção de eventos de tag.

"filterGroups": [ [ { "type": "EVENT", "pattern": "PUSH, PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED, PULL_REQUEST_REOPENED, PULL_REQUEST_MERGED, PULL_REQUEST_CLOSED" }, { "type": "HEAD_REF", "pattern": "^refs/tags/.*", "excludeMatchedPattern": true } ] ]

Você pode criar um filtro que acionará uma compilação apenas quando arquivos com nomes que correspondam à expressão regular no argumento pattern forem alterados. Neste exemplo, o grupo de filtros especifica que uma compilação será acionada apenas quando arquivos com um nome que corresponda à expressão regular ^buildspec.* forem alterados.

"filterGroups": [ [ { "type": "EVENT", "pattern": "PUSH" }, { "type": "FILE_PATH", "pattern": "^buildspec.*" } ] ]

Neste exemplo, um grupo de filtros especifica que uma compilação seja acionada somente quando os arquivos são alterados nas pastas src ou test.

"filterGroups": [ [ { "type": "EVENT", "pattern": "PUSH" }, { "type": "FILE_PATH", "pattern": "^src/.+|^test/.+" } ] ]

É possível criar um filtro que acione uma compilação somente quando uma alteração é feita por um usuário especificado do GitHub ou do GitHub Enterprise Server com ID da conta actor-account-id.

nota

Para obter informações sobre como encontrar o ID da sua conta do GitHub, consulte https://api.github.com/users/user-name, no qual user-name é seu nome de usuário do GitHub.

"filterGroups": [ [ { "type": "EVENT", "pattern": "PUSH, PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED, PULL_REQUEST_REOPENED, PULL_REQUEST_MERGED, PULL_REQUEST_CLOSED" }, { "type": "ACTOR_ACCOUNT_ID", "pattern": "actor-account-id" } ] ]

É possível criar um filtro que aciona uma compilação somente quando a mensagem de confirmação head corresponde à expressão regular no argumento padrão. Neste exemplo, o grupo de filtros especifica que uma compilação é acionada somente quando a mensagem de confirmação head do evento de push corresponde à expressão regular \[CodeBuild\].

"filterGroups": [ [ { "type": "EVENT", "pattern": "PUSH" }, { "type": "COMMIT_MESSAGE", "pattern": "\[CodeBuild\]" } ] ]

Para criar um filtro de webhook que aciona uma compilação apenas para trabalhos de fluxo de trabalho do GitHub Actions, insira o seguinte na sintaxe de solicitação:

"filterGroups": [ [ { "type": "EVENT", "pattern": "WORKFLOW_JOB_QUEUED" } ] ]
PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.