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á.
Exemplo: invocar uma função Lambda
O exemplo de fluxo de trabalho a seguir inclui a ação de AWS Lambda invocação, junto com uma ação de implantação. O fluxo de trabalho envia uma notificação do Slack indicando que uma implantação foi iniciada e, em seguida, implanta um aplicativo AWS usando um AWS CloudFormation modelo. O fluxo de trabalho consiste nos seguintes blocos de construção que são executados sequencialmente:
-
Um gatilho — Esse gatilho inicia a execução automática do fluxo de trabalho quando você envia uma alteração ao seu repositório de origem. Para obter mais informações sobre gatilhos, consulte Iniciando um fluxo de trabalho executado automaticamente usando gatilhos.
-
Uma ação de AWS Lambda invocação (
LambdaNotify
) — No gatilho, essa ação invoca a funçãoNotify-Start
Lambda na AWS conta e região especificadas (e).my-aws-account
us-west-2
Na invocação, a função Lambda envia uma notificação do Slack indicando que a implantação foi iniciada. -
Uma ação Deploy AWS CloudFormation stack (
Deploy
) — Ao concluir a ação de AWS Lambda invocação, a ação Deploy AWS CloudFormation stack executa o template (cfn-template.yml
) para implantar sua pilha de aplicativos. Para obter mais informações sobre a ação Deploy AWS CloudFormation stack, consulteImplantação de uma pilha AWS CloudFormation.
nota
O exemplo de fluxo de trabalho a seguir serve para fins ilustrativos e não funcionará sem configuração adicional.
nota
No YAML código a seguir, você pode omitir as Connections:
seções se quiser. Se você omitir essas seções, deverá garantir que a função especificada no campo Função padrão IAM em seu ambiente inclua as permissões e as políticas de confiança exigidas pelas ações de AWS Lambda invocação e implantação da AWS CloudFormation pilha. Para obter mais informações sobre como configurar um ambiente com uma IAM função padrão, consulteCriar um ambiente. Para obter mais informações sobre as permissões e as políticas de confiança exigidas pelas ações AWS Lambda invoke e Deploy AWS CloudFormation stack, consulte a descrição da Role
propriedade em e. AWS Lambda ação 'invocar' YAML Ação “Deploy AWS CloudFormation stack” YAML
Name: codecatalyst-lamda-invoke-workflow SchemaVersion: 1.0 Triggers: - Type: PUSH Branches: - main Actions: LambdaNotify: Identifier: aws/lambda-invoke@v1 Environment: Name: my-production-environment Connections: - Name: my-aws-account Role: codecatalyst-lambda-invoke-role Inputs: Sources: - WorkflowSource Configuration: Function: Notify-Start AWSRegion: us-west-2 Deploy: Identifier: aws/cfn-deploy@v1 Environment: Name: my-production-environment Connections: - Name: my-aws-account Role: codecatalyst-deploy-role Inputs: Sources: - WorkflowSource Configuration: name: my-application-stack region: us-west-2 role-arn: arn:aws:iam::111122223333:role/StackRole template: ./cfn-template.yml capabilities: CAPABILITY_IAM,CAPABILITY_AUTO_EXPAND