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
Esse exemplo mostra como configurar uma regra do EventBridge que inicie uma função AWS Lambda quando a versão de um pacote em um repositório do CodeArtifact for publicada, modificada ou excluída.
Para obter mais informações, consulte Tutorial: Agendar funções AWS Lambda usando o EventBridge no Guia do usuário do Amazon EventBridge.
Tópicos
Criar a regra do EventBridge
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"]}}'
Criar o destino da regra do EventBridge
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 --ruleMyCodeArtifactRepoRule--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-nameMyLambdaFunction\\ --statement-idmy-statement-id--action 'lambda:InvokeFunction' \\ --principal events.amazonaws.com \\ --source-arn arn:aws:events:us-west-2:111122223333:rule/MyCodeArtifactRepoRule