Filtrar eventos de webhooks en GitHub (CloudFormation) - AWS CodeBuild

Filtrar eventos de webhooks en GitHub (CloudFormation)

Si desea usar una plantilla de CloudFormation para filtrar eventos de webhooks, utilice la propiedad AWS CodeBuild del proyecto de FilterGroups.

Para obtener más información sobre los eventos de webhook de GitHub, consulte Eventos de webhooks de GitHub.

El siguiente fragmento con formato YAML de una plantilla CloudFormation crea dos grupos de filtros. Juntos, desencadenan una compilación cuando uno de los grupos o los dos se evalúan como true:

  • El primer grupo de filtros especifica las solicitudes de extracción creadas o actualizadas en ramificaciones con nombres de referencia que coinciden con la expresión regular ^refs/heads/main$ por un usuario de Git que no tiene el ID de cuenta 12345.

  • El segundo grupo de filtros especifica las solicitudes de inserción que se crean en archivos cuyos nombres coinciden con la expresión regular READ_ME en las ramificaciones que tienen un nombre de referencia de Git que coincide con la expresión regular ^refs/heads/.*.

  • El tercer grupo de filtros especifica una solicitud de inserción con un mensaje de confirmación del encabezado que coincida con la expresión regular \[CodeBuild\].

  • El cuarto grupo de filtros especifica una solicitud de trabajo de flujo de trabajo de GitHub Actions con un nombre de flujo de trabajo que coincide con la expresión regular \[CI-CodeBuild\].

CodeBuildProject: Type: AWS::CodeBuild::Project Properties: Name: MyProject ServiceRole: service-role Artifacts: Type: NO_ARTIFACTS Environment: Type: LINUX_CONTAINER ComputeType: BUILD_GENERAL1_SMALL Image: aws/codebuild/standard:5.0 Source: Type: GITHUB Location: source-location Triggers: Webhook: true FilterGroups: - - Type: EVENT Pattern: PULL_REQUEST_CREATED,PULL_REQUEST_UPDATED - Type: BASE_REF Pattern: ^refs/heads/main$ ExcludeMatchedPattern: false - Type: ACTOR_ACCOUNT_ID Pattern: 12345 ExcludeMatchedPattern: true - - Type: EVENT Pattern: PUSH - Type: HEAD_REF Pattern: ^refs/heads/.* - Type: FILE_PATH Pattern: READ_ME ExcludeMatchedPattern: true - - Type: EVENT Pattern: PUSH - Type: COMMIT_MESSAGE Pattern: \[CodeBuild\] - Type: FILE_PATH Pattern: ^src/.+|^test/.+ - - Type: EVENT Pattern: WORKFLOW_JOB_QUEUED - Type: WORKFLOW_NAME Pattern: \[CI-CodeBuild\]