As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Use um evento para executar uma função do Lambda
Este exemplo mostra como configurar uma EventBridge regra que inicia uma AWS Lambda função quando uma versão do pacote em um CodeArtifact repositório é publicada, modificada ou excluída.
Para obter mais informações, consulte Tutorial: Agendar o uso de AWS Lambda funções EventBridge no Guia EventBridge do usuário da Amazon.
Tópicos
Crie a EventBridge regra
Para criar uma regra que inicie uma função do Lambda, use o comando put-rule
com as opções --name
e --event-pattern
. O padrão a seguir especifica pacotes npm no escopo do @types
em qualquer repositório no domínio 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
"]}}'
Crie o destino da EventBridge regra
O comando a seguir adiciona um destino à regra que executa a função do Lambda quando um evento corresponde à regra. Para o parâmetro arn
, especifique o nome do recurso da Amazon (ARN) da função do Lambda.
aws events put-targets --rule
MyCodeArtifactRepoRule
--targets \ Id=1,Arn=arn:aws:lambda:us-west-2
:111122223333
:function:MyLambdaFunction
Configurar permissões do EventBridge
Use o comando add-permission
para conceder permissões para a regra invocar uma função do Lambda. Para o parâmetro --source-arn
, especifique o ARN da regra criada anteriormente neste exemplo.
aws lambda add-permission --function-name
MyLambdaFunction
\\ --statement-idmy-statement-id
--action 'lambda:InvokeFunction' \\ --principal events.amazonaws.com \\ --source-arn arn:aws:events:us-west-2
:111122223333
:rule/MyCodeArtifactRepoRule