

A Amazon não CodeCatalyst está mais aberta a novos clientes. Os clientes atuais podem continuar usando o serviço normalmente. Para obter mais informações, consulte [Como migrar do CodeCatalyst](migration.md).

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 do Lambda
<a name="lam-invoke-action-example-workflow"></a>

O exemplo de fluxo de trabalho a seguir inclui a ação **Invocação do AWS Lambda **, 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 CloudFormation modelo. O fluxo de trabalho consiste nos seguintes blocos de compilaçã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 ter mais informações sobre gatilhos, consulte [Início da execução automática de um fluxo de trabalho usando gatilhos](workflows-add-trigger.md).
+ Uma ação **Invocação do AWS Lambda ** (`LambdaNotify`) — No gatilho, essa ação invoca a função do Lambda `Notify-Start` na conta da AWS e região especificadas (`my-aws-account` e `us-west-2`). Na invocação, a função do Lambda envia uma notificação do Slack indicando que a implantação foi iniciada.
+ Uma ação **Deploy CloudFormation stack** (`Deploy`) — Ao concluir a ação de **AWS Lambda invocação**, a ação **Deploy CloudFormation stack** executa o template (`cfn-template.yml`) para implantar sua pilha de aplicativos. Para obter mais informações sobre a ação **Deploy CloudFormation stack**, consulte[Implantação de uma pilha CloudFormation](deploy-action-cfn.md).

**nota**  
O exemplo de fluxo de trabalho a seguir serve para fins ilustrativos e não funcionará sem configuração adicional.

**nota**  
No código YAML a seguir, você pode omitir as seções `Connections:` se quiser. Se você omitir essas seções, deverá garantir que a função especificada no campo Função **padrão do 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 CloudFormation pilha**. Para ter mais informações sobre como configurar um ambiente com um perfil do IAM padrão, consulte [Criar um ambiente](deploy-environments-creating-environment.md). 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 CloudFormation stack**, consulte a descrição da `Role` propriedade em e. [YAML da ação “Invocação do AWS Lambda ”](lam-invoke-action-ref.md) [Ação “Implantar CloudFormation pilha” YAML](deploy-action-ref-cfn.md)

```
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
```