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.
Temas
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 --ruleMyCodeArtifactRepoRule--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-nameMyLambdaFunction\\ --statement-idmy-statement-id--action 'lambda:InvokeFunction' \\ --principal events.amazonaws.com \\ --source-arn arn:aws:events:us-west-2:111122223333:rule/MyCodeArtifactRepoRule