Utilizar un evento para ejecutar una función de Lambda - CodeArtifact

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.

Utilizar un evento para ejecutar una función de Lambda

Este ejemplo muestra cómo configurar una regla de EventBridge que inicia una función AWS Lambda cuando se publica, modifica o elimina una versión de paquete en un repositorio de CodeArtifact.

Para obtener más información, consulte el Tutorial: Programar funciones AWS Lambda con EventBridge en la Guía del usuario de Amazon EventBridge.

Crear la regla de EventBridge

Para crear una regla que inicie una función de Lambda, utilice el comando put-rule con las opciones --name y --event-pattern. El siguiente patrón especifica los paquetes npm en el ámbito @types de cualquier repositorio del dominio my_domain.

aws events put-rule --name "MyCodeArtifactRepoRule" --event-pattern \ '{"source":["aws.codeartifact"],"detail-type":["CodeArtifact Package Version State Change"], "detail":{"domainName":["my_domain"],"domainOwner":["111122223333"],"packageNamespace":["types"],"packageFormat":["npm"]}}'

Crear el objetivo de la regla de EventBridge

El siguiente comando agrega un destino a la regla que ejecuta la función de Lambda cuando un evento coincide con la regla. Para el parámetro arn, especifique el nombre de recurso de Amazon (ARN) de la función de Lambda.

aws events put-targets --rule MyCodeArtifactRepoRule --targets \ Id=1,Arn=arn:aws:lambda:us-west-2:111122223333:function:MyLambdaFunction

Configuración de permisos de EventBridge

Utilice el comando add-permission para conceder permisos para que la regla invoque una función de Lambda. Para el parámetro --source-arn, especifique el ARN de la regla que creó anteriormente en este ejemplo.

aws lambda add-permission --function-name MyLambdaFunction \\ --statement-id my-statement-id --action 'lambda:InvokeFunction' \\ --principal events.amazonaws.com \\ --source-arn arn:aws:events:us-west-2:111122223333:rule/MyCodeArtifactRepoRule