Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Ejemplo: crear un AWS CodeCommit activador para un tema de Amazon SNS

Modo de enfoque
Ejemplo: crear un AWS CodeCommit activador para un tema de Amazon SNS - AWS CodeCommit

AWS CodeCommit ya no está disponible para nuevos clientes. Los clientes existentes de AWS CodeCommit pueden seguir utilizando el servicio con normalidad. Más información

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.

AWS CodeCommit ya no está disponible para nuevos clientes. Los clientes existentes de AWS CodeCommit pueden seguir utilizando el servicio con normalidad. Más información

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.

Puede crear un activador para un CodeCommit repositorio de modo que los eventos de ese repositorio activen notificaciones desde un tema del Amazon Simple Notification Service (Amazon SNS). Es posible que le interese crear un disparador para un tema de Amazon SNS que permita a los usuarios suscribirse y recibir notificaciones sobre los eventos del repositorio como, por ejemplo, la eliminación de ramificaciones. También puede aprovechar la integración de los temas de Amazon SNS con otros servicios, como Amazon Simple Queue Service (Amazon SQS) y. AWS Lambda

nota
  • Debe apuntar el disparador a un tema de Amazon SNS existente, que es la acción que se realiza en respuesta a los eventos del repositorio. Para obtener información sobre cómo crear temas de Amazon SNS y suscribirse a ellos, consulte Introducción a Amazon Simple Notification Service.

  • Los temas FIFO (primero en entrar, primero en salir) de Amazon SNS no se admiten como activadores. CodeCommit

Crear un activador para un tema de Amazon SNS para un CodeCommit repositorio (consola)

  1. Abra la CodeCommit consola en https://console.aws.amazon.com/codesuite/codecommit/home.

  2. En Repositories (Repositorios), seleccione aquel en el que quiera crear los disparadores para los eventos del repositorio.

  3. En el panel de navegación del repositorio, elija Settings (Configuración) y, a continuación, seleccione Triggers (Disparadores).

  4. Elija Create trigger (Crear disparador) y, a continuación, haga lo siguiente:

    • En Nombre del disparador, introduzca un nombre para el disparador (por ejemplo,). MyFirstTrigger

    • En Eventos, seleccione los eventos del repositorio que activan el envío de notificaciones por parte del tema de Amazon SNS.

      Si elige All repository events, no podrá seleccionar ningún otro evento. Para elegir un subconjunto de eventos, elimine All repository events y, a continuación, elija uno o más eventos de la lista. Por ejemplo, si desea que el disparador solo se active cuando un usuario crea una ramificación o una etiqueta en el repositorio de CodeCommit, elimine All repository events (Todos los eventos del repositorio) y elija Create branch or tag (Crear bifurcación o etiqueta).

    • Si desea que el disparador se aplique a todas las ramificaciones del repositorio, en Branches (Ramificaciones), deje la selección en blanco, ya que esta opción predeterminada se aplica el disparador para que todas las ramificaciones de forma automática. Si desea que este disparador se aplique a ramificaciones específicas solo, elija hasta 10 nombres de ramificaciones de la lista de ramificaciones del repositorio.

    • En Elija el servicio que utilizar, seleccione Amazon SNS.

    • En Amazon SNS, elija un nombre de tema de la lista o introduzca el ARN para el tema.

      nota

      Los temas FIFO (primero en entrar, primero en salir) de Amazon SNS no se admiten como activadores. CodeCommit Debe elegir un tema de Amazon SNS cuyo tipo esté establecido en Estándar.

    • En Datos personalizados, también puede introducir cualquier información opcional que desee incluir en la notificación que envía el tema de Amazon SNS (por ejemplo, el nombre del canal IRC que usan los desarrolladores para hablar del desarrollo en este repositorio). Este campo es una cadena. No se puede usar para transmitir parámetros dinámicos.

  5. (Opcional) Elija Test trigger (Probar disparador). Este paso le ayuda a confirmar que ha configurado correctamente el acceso entre CodeCommit y el tema Amazon SNS. Utiliza el tema de Amazon SNS para enviar una notificación de prueba con los datos del repositorio, si están disponibles. Si no se dispone de datos reales, la notificación de prueba contiene datos de ejemplo.

  6. Seleccione Create trigger (Crear disparador) para acabar de crear el disparador.

Crear un activador para un tema de Amazon SNS para un CodeCommit repositorio ()AWS CLI

También puedes usar la línea de comandos para crear un activador para un tema de Amazon SNS en respuesta a eventos del CodeCommit repositorio, como cuando alguien envía una confirmación a tu repositorio.

Para crear un disparador para un tema de Amazon SNS
  1. Abrir un editor de texto sin formato y cree un archivo JSON que especifique:

    • Nombre del tema de Amazon SNS.

      nota

      Los temas FIFO (primero en entrar, primero en salir) de Amazon SNS no se admiten como activadores. CodeCommit Debe elegir un tema de Amazon SNS cuyo tipo esté establecido en Estándar.

    • El repositorio y las ramificaciones que desee monitorizar con este disparador. (Si no especifica ramificaciones, el disparador se aplica a todas las ramificaciones del repositorio).

    • Los eventos que activan este disparador.

    Guarde el archivo.

    Por ejemplo, para crear un activador para un repositorio denominado MyDemoRepo que publique todos los eventos del repositorio en un tema de Amazon SNS con el nombre MySNSTopic de dos ramas, main y: preprod

    { "repositoryName": "MyDemoRepo", "triggers": [ { "name": "MyFirstTrigger", "destinationArn": "arn:aws:sns:us-east-2:111122223333:MySNSTopic", "customData": "", "branches": [ "main", "preprod" ], "events": [ "all" ] } ] }

    Debe haber un bloque de disparadores en JSON para cada disparador en un repositorio. Para crear más de un disparador para el repositorio, incluya más de un bloque de disparadores en el JSON. Recuerde que todos los disparadores creados en este archivo son para el repositorio especificado. No puede crear disparadores de varios repositorios en un único archivo JSON. Por ejemplo, si desea crear dos disparadores para un repositorio, puede crear un archivo JSON con dos bloques de disparadores. En el siguiente ejemplo, no se especifican las ramificaciones del segundo disparador, por lo que ese disparador se aplica a todas las ramificaciones:

    { "repositoryName": "MyDemoRepo", "triggers": [ { "name": "MyFirstTrigger", "destinationArn": "arn:aws:sns:us-east-2:111122223333:MySNSTopic", "customData": "", "branches": [ "main", "preprod" ], "events": [ "all" ] }, { "name": "MySecondTrigger", "destinationArn": "arn:aws:sns:us-east-2:111122223333:MySNSTopic2", "customData": "", "branches": [], "events": [ "updateReference", "deleteReference" ] } ] }

    Puede crear disparadores para eventos que especifique, como por ejemplo cuando se inserta una confirmación en un repositorio. Entre los tipos de eventos se incluyen:

    • all: todos los eventos del repositorio y las ramificaciones especificados.

    • updateReference: si las confirmaciones se envían al repositorio y ramificaciones especificados.

    • createReference: si se crea una nueva ramificación o etiqueta en el repositorio especificado.

    • deleteReference: si se elimina una ramificación o etiqueta en el repositorio especificado.

    nota

    Puede usar más de un tipo de evento en un disparador. Sin embargo, si especifica all, no podrá especificar ningún otro evento.

    Para ver la lista completa de tipos de eventos válidos, en el terminal o el símbolo del sistema, introduzca aws codecommit put-repository-triggers help.

    Además, puede incluir una cadena en customData (por ejemplo, el nombre del canal IRC que usan los desarrolladores para hablar del desarrollo en este repositorio). Este campo es una cadena. No se puede usar para transmitir parámetros dinámicos. Esta cadena se añade como atributo al CodeCommit JSON devuelto en respuesta al disparador.

  2. (Opcional) Ejecute el comando test-repository-triggers en un terminal o la línea de comandos. Esta prueba utiliza datos de ejemplo del repositorio (o genera datos de ejemplo si no hay datos disponibles) para enviar una notificación a los suscriptores del tema de Amazon SNS. Por ejemplo, se utiliza lo siguiente para comprobar que el JSON del archivo activador denominado trigger.json es válido y se CodeCommit puede publicar en el tema Amazon SNS:

    aws codecommit test-repository-triggers --cli-input-json file://trigger.json

    Si se ejecuta correctamente, este comando proporciona información similar a la siguiente:

    { "successfulExecutions": [ "MyFirstTrigger" ], "failedExecutions": [] }
  3. En el terminal o el símbolo del sistema, ejecute el comando put-repository-triggers para crear el disparador en CodeCommit. Por ejemplo, para usar un archivo JSON llamado trigger.json para crear el disparador:

    aws codecommit put-repository-triggers --cli-input-json file://trigger.json

    Este comando devuelve un ID de configuración similar a este:

    { "configurationId": "0123456-I-AM-AN-EXAMPLE" }
  4. Para ver la configuración del disparador, ejecute el comando get-repository-triggers y especifique el nombre del repositorio:

    aws codecommit get-repository-triggers --repository-name MyDemoRepo

    Este comando devuelve la estructura de todos los disparadores configurados para el repositorio, de forma similar a la siguiente:

    { "configurationId": "0123456-I-AM-AN-EXAMPLE", "triggers": [ { "events": [ "all" ], "destinationArn": "arn:aws:sns:us-east-2:111122223333:MySNSTopic", "branches": [ "main", "preprod" ], "name": "MyFirstTrigger", "customData": "Project ID 12345" } ] }
  5. Para probar la funcionalidad del disparador, cree y envíe una confirmación al repositorio en el que haya configurado el disparador. Debería ver una respuesta del tema de Amazon SNS. Por ejemplo, si configura el tema de Amazon SNS para que envíe un correo electrónico, debería ver un mensaje de correo electrónico de Amazon SNS en la cuenta de correo electrónico suscrita al tema.

    A continuación se muestra un ejemplo del resultado de un correo electrónico enviado desde Amazon SNS en respuesta a un envío a un CodeCommit repositorio:

    { "Records":[ { "awsRegion":"us-east-2", "codecommit":{ "references" : [ { "commit":"317f8570EXAMPLE", "created":true, "ref":"refs/heads/NewBranch" }, { "commit":"4c925148EXAMPLE", "ref":"refs/heads/preprod", } ] }, "eventId":"11111-EXAMPLE-ID", "eventName":"ReferenceChange", "eventPartNumber":1, "eventSource":"aws:codecommit", "eventSourceARN":"arn:aws:codecommit:us-east-2:111122223333:MyDemoRepo", "eventTime":"2016-02-09T00:08:11.743+0000", "eventTotalParts":1, "eventTriggerConfigId":"0123456-I-AM-AN-EXAMPLE", "eventTriggerName":"MyFirstTrigger", "eventVersion":"1.0", "customData":"Project ID 12345", "userIdentityARN":"arn:aws:iam::111122223333:user/JaneDoe-CodeCommit", } ] }
PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.