Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Filtrar eventos de GitHub webhook () SDK
Para usar el AWS CodeBuild SDK para filtrar los eventos de webhook, usa el filterGroups
campo de la sintaxis de solicitud de los métodos CreateWebhook
o UpdateWebhook
API. Para obtener más información, consulte WebhookFilterla CodeBuild APIReferencia.
Para obtener más información sobre los eventos de GitHub webhook, consulteGitHub eventos de webhook.
Si desea crear un filtro de webhook que desencadene una compilación únicamente con las solicitudes de extracción, inserte lo siguiente en la sintaxis de la solicitud:
"filterGroups": [ [ { "type": "EVENT", "pattern": "PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED, PULL_REQUEST_REOPENED, PULL_REQUEST_MERGED, PULL_REQUEST_CLOSED" } ] ]
Si desea crear un filtro de webhooks que desencadene una compilación únicamente con las ramificaciones especificadas, utilice el parámetro pattern
para especificar una expresión regular que filtre los nombres de las ramificaciones. Si utilizamos un ejemplo con dos grupos de filtros, la compilación se desencadenaría cuando uno de los grupos o los dos se evalúen como true:
-
El primer grupo de filtros especifica las solicitudes de extracción que se crean, actualizan o vuelven a abrirse en ramificaciones con nombres de referencia de Git que coinciden con la expresión regular
^refs/heads/main$
y las referencias de encabezado que coinciden con^refs/heads/myBranch$
. -
El segundo grupo de filtros especifica solicitudes de inserción en ramificaciones con nombres de referencia de Git que coinciden con la expresión 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$" } ] ]
Puede utilizar el parámetro excludeMatchedPattern
para especificar qué eventos no desencadenan una compilación. Por ejemplo, en este caso, se desencadena una compilación con todas las solicitudes, excepto los eventos de etiquetas.
"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 } ] ]
Puede crear un filtro que desencadene una compilación solo cuando se modifiquen los archivos cuyos nombres coincidan con la expresión regular del argumento pattern
. En este ejemplo, el grupo de filtros especifica que la compilación solo debe desencadenarse cuando se modifiquen los archivos cuyos nombres coincidan con la expresión regular ^buildspec.*
.
"filterGroups": [ [ { "type": "EVENT", "pattern": "PUSH" }, { "type": "FILE_PATH", "pattern": "^buildspec.*" } ] ]
En este ejemplo, el grupo de filtros especifica que solo se activa una compilación cuando se cambian archivos en las carpetas src
o test
.
"filterGroups": [ [ { "type": "EVENT", "pattern": "PUSH" }, { "type": "FILE_PATH", "pattern": "^src/.+|^test/.+" } ] ]
Puede crear un filtro que active una compilación solo cuando un usuario específico GitHub o de GitHub Enterprise Server con un ID actor-account-id
de cuenta realice un cambio.
nota
Para obtener información sobre cómo encontrar el ID de su GitHub cuenta, consulte https://api.github.com/users/user-name
donde, user-name
es tu nombre GitHub de usuario.
"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" } ] ]
Puede crear un filtro que desencadene una compilación solo cuando el mensaje de confirmación del encabezado coincida con la expresión regular en el argumento pattern. En este ejemplo, el grupo de filtros especifica que una compilación se desencadena solo cuando el mensaje de confirmación del encabezado del evento de inserción coincide con la expresión regular \[CodeBuild\]
.
"filterGroups": [ [ { "type": "EVENT", "pattern": "PUSH" }, { "type": "COMMIT_MESSAGE", "pattern": "\[CodeBuild\]" } ] ]
Para crear un filtro de webhook que active únicamente la creación de trabajos de flujo de trabajo para GitHub Actions, inserta lo siguiente en la sintaxis de la solicitud:
"filterGroups": [ [ { "type": "EVENT", "pattern": "WORKFLOW_JOB_QUEUED" } ] ]