Usar webhooks com o AWS CodeBuild
O AWS CodeBuild é compatível com a integração de webhook ao GitHub, ao GitHub Enterprise Server, ao GitLab, ao GitLab Self-Managed e ao Bitbucket.
Práticas recomendadas para usar webhooks com o AWS CodeBuild
Para projetos que usam repositórios públicos para configurar webhooks, recomendamos as seguintes opções:
- Filtros de configuração
ACTOR_ACCOUNT_ID -
Adicione filtros
ACTOR_ACCOUNT_IDaos grupos de filtros de webhook do projeto para especificar quais usuários podem acionar uma compilação. Cada evento de webhook entregue ao CodeBuild vem com informações do remetente que especificam o identificador do representante. O CodeBuild filtrará os webhooks com base no padrão de expressão regular fornecido nos filtros. É possível determinar os usuários específicos que têm permissão para acionar compilações com esse filtro. Para obter mais informações, consulte Eventos de webhook do GitHub e Filtrar eventos de webhook do Bitbucket. - Filtros de configuração
FILE_PATH -
Adicione filtros
FILE_PATHaos grupos de filtros de webhook do projeto para incluir ou excluir os arquivos que podem acionar uma compilação quando alterados. Por exemplo, é possível negar solicitações de compilação para alterações no arquivobuildspec.ymlusando um padrão de expressão regular, como^buildspec.yml$, junto com a propriedadeexcludeMatchedPattern. Para obter mais informações, consulte Eventos de webhook do GitHub e Filtrar eventos de webhook do Bitbucket. - Definir o escopo das permissões para o perfil do IAM de compilação
-
As compilações acionadas por um webhook usam o perfil de serviço do IAM especificado no projeto. Recomendamos definir as permissões no perfil de serviço com o conjunto mínimo de permissões necessário para executar a compilação. Por exemplo, em um cenário de teste e implantação, crie um projeto para teste e outro projeto para implantação. O projeto de teste aceita compilações de webhook do repositório, mas não fornece permissões de gravação para os recursos. O projeto de implantação fornece permissões de gravação para os recursos, e o filtro de webhook está configurado para permitir que somente usuários confiáveis acionem compilações.
- Usar um buildspec em linha ou armazenado no Amazon S3
-
Se você definir o buildspec em linha dentro do próprio projeto ou armazenar o arquivo buildspec em um bucket do Amazon S3, o arquivo buildspec estará visível somente para o proprietário do projeto. Isso evita que solicitações pull façam alterações no código do arquivo buildspec e acionem compilações indesejadas. Para obter mais informações, consulte ProjectSource.buildspec na Referência da API do CodeBuild.