

Amazon ya no CodeCatalyst está abierto a nuevos clientes. Los clientes existentes pueden seguir utilizando el servicio con normalidad. Para obtener más información, consulte [Cómo migrar desde CodeCatalyst](migration.md).

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.

# Ejemplo: Invocación de una función de Lambda
<a name="lam-invoke-action-example-workflow"></a>

El siguiente ejemplo de flujo de trabajo incluye la acción **invocación de AWS Lambda ** junto con una acción de implementación. El flujo de trabajo envía una notificación de Slack en la que se indica que se ha iniciado una implementación y, a continuación, despliega una aplicación utilizando una plantilla. AWS CloudFormation El flujo de trabajo consta de los siguientes componentes, que se ejecutarán en orden:
+ Un **desencadenador**: este desencadenador inicia la ejecución automática del flujo de trabajo cuando se introduce un cambio en el repositorio de código fuente. Para obtener más información acerca de los desencadenadores, consulte [Inicio de un flujo de trabajo y ejecución automática mediante desencadenadores](workflows-add-trigger.md).
+ Una acción **invocación de AWS Lambda ** (`LambdaNotify`): al activarse, esta acción invoca la función de Lambda `Notify-Start` en la cuenta y la región de AWS especificadas (`my-aws-account` y `us-west-2`). Al invocarse, la función de Lambda envía una notificación de Slack que indica que se ha iniciado una implementación.
+ Una acción de **despliegue de CloudFormation pila** (`Deploy`): al finalizar la acción de **AWS Lambda invocación**, la acción de **despliegue de CloudFormation pila** ejecuta la plantilla (`cfn-template.yml`) para desplegar tu pila de aplicaciones. Para obtener más información sobre la acción **Implementar CloudFormation una pila**, consulte[Implementación de una CloudFormation pila](deploy-action-cfn.md).

**nota**  
El siguiente ejemplo de flujo de trabajo tiene fines ilustrativos y no funcionará sin una configuración adicional.

**nota**  
En el código de YAML que se muestra a continuación, puede omitir las secciones `Connections:` si lo desea. Si omite estas secciones, debe asegurarse de que la función especificada en el campo **Función de IAM predeterminada** de su entorno incluya los permisos y las políticas de confianza que requieren las acciones de **AWS Lambda invocación** e **implementación CloudFormation ** de la pila. Para obtener más información sobre cómo configurar un entorno con un rol de IAM predeterminado, consulte [Creación de un entorno](deploy-environments-creating-environment.md). Para obtener más información sobre los permisos y las políticas de confianza que requieren las acciones de ** CloudFormation pila **AWS Lambda invocar** e implementar**, consulte la descripción de la `Role` propiedad en los campos y. [YAML de la acción invocar de AWS Lambda](lam-invoke-action-ref.md) [Acción «Desplegar CloudFormation pila» 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
```