Exemple : Invoquer une fonction Lambda - Amazon CodeCatalyst

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

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 AWS 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.

  • 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 AWS CloudFormation stack (Deploy) — Une fois l'action AWS Lambda d'appel terminée, l'action Deploy AWS CloudFormation stack exécute le template (cfn-template.yml) pour déployer votre pile d'applications. Pour plus d'informations sur l'action Deploy AWS CloudFormation stack, consultezDéploiement d'une AWS CloudFormation pile.

Note

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

Note

Dans le YAML code 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 IAMRôle par défaut de votre environnement inclut les autorisations et les politiques de confiance requises par les actions de AWS CloudFormation pile AWS Lambda Invoke et Deploy. Pour plus d'informations sur la configuration d'un environnement doté d'un IAM rôle par défaut, consultezCréation d'un environnement. Pour plus d'informations sur les autorisations et les politiques de confiance requises par les actions de AWS CloudFormation pile AWS Lambda Invoke et Deploy, consultez la description de la Role propriété dans le action « AWS Lambda  invoquer » YAML etAction « Déployer une AWS CloudFormation pile » 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