

Amazon n' CodeCatalyst est plus ouvert aux nouveaux clients. Les clients existants peuvent continuer à utiliser le service normalement. Pour de plus amples informations, veuillez consulter [Comment effectuer une migration depuis CodeCatalyst](migration.md).

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Exemple : Invoquer une fonction Lambda
<a name="lam-invoke-action-example-workflow"></a>

L'exemple de flux de travail suivant inclut **AWS Lambda l'action d'appel**, ainsi qu'une action de déploiement. Le flux de travail envoie une notification Slack indiquant qu'un déploiement a commencé, puis déploie une application en AWS utilisant un CloudFormation modèle. Le flux de travail comprend les éléments de base suivants qui s'exécutent de manière séquentielle :
+ Un **déclencheur** : ce déclencheur lance automatiquement l'exécution du flux de travail lorsque vous apportez une modification à votre référentiel source. Pour plus d'informations sur les déclencheurs, consultez [Démarrage d'un flux de travail exécuté automatiquement à l'aide de déclencheurs](workflows-add-trigger.md).
+ Une action d'**AWS Lambda appel** (`LambdaNotify`) — Au moment du déclenchement, cette action invoque la fonction `Notify-Start` Lambda dans le compte et la région AWS spécifiés `my-aws-account` (, `us-west-2` et). Lors de l'appel, la fonction Lambda envoie une notification Slack indiquant qu'un déploiement a commencé.
+ Une action **Deploy CloudFormation stack** (`Deploy`) — Une fois l'action **AWS Lambda d'appel** terminée, l'action **Deploy CloudFormation stack** exécute le template (`cfn-template.yml`) pour déployer votre pile d'applications. Pour plus d'informations sur l'action **Deploy CloudFormation stack**, consultez[Déploiement d'une CloudFormation pile](deploy-action-cfn.md).

**Note**  
L'exemple de flux de travail suivant est fourni à titre d'illustration et ne fonctionnera pas sans configuration supplémentaire.

**Note**  
Dans le code YAML qui suit, vous pouvez omettre les `Connections:` sections si vous le souhaitez. Si vous omettez ces sections, vous devez vous assurer que le rôle spécifié dans le champ **Rôle IAM par défaut** de votre environnement inclut les autorisations et les politiques de confiance requises par les actions de ** CloudFormation pile **AWS Lambda Invoke** et Deploy**. Pour plus d'informations sur la configuration d'un environnement doté d'un rôle IAM par défaut, consultez[Création d'un environnement](deploy-environments-creating-environment.md). Pour plus d'informations sur les autorisations et les politiques de confiance requises par les actions de ** CloudFormation pile **AWS Lambda Invoke** et Deploy**, consultez la description de la `Role` propriété dans le [action « AWS Lambda  invoquer » YAML](lam-invoke-action-ref.md) et[Action « Déployer une CloudFormation pile » 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
```