Commencer à tester localement - AWS Kit de développement Cloud (AWS CDK) v2

Ceci est le guide du développeur du AWS CDK v2. L'ancien CDK v1 est entré en maintenance le 1er juin 2022 et a pris fin le 1er juin 2023.

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.

Commencer à tester localement

Cette rubrique décrit ce dont vous avez besoin pour utiliser la CLI AWS SAM avec des applications AWS CDK et fournit des instructions pour créer et tester localement une application AWS CDK simple.

Prérequis

Pour effectuer un test local, vous devez installer la CLI AWS SAM. Voir Installer la CLI AWS SAM pour les instructions d'installation.

Création et test local d'une application AWS CDK

Pour tester localement une application AWS CDK à l'aide de la CLI AWS SAM, vous devez disposer d'une application AWS CDK contenant une fonction Lambda. Suivez les étapes ci-dessous pour créer une application AWS CDK de base avec une fonction Lambda. Pour plus d'informations, consultez la section Création d'une application sans serveur à l'aide du AWS CDK dans le Guide du AWS développeur du Cloud Development Kit (AWS CDK).

Étape 1 : Création d'une application AWS CDK

Pour ce didacticiel, initialisez une application AWS CDK qui utilise. TypeScript

Commande à exécuter :

$ mkdir cdk-sam-example $ cd cdk-sam-example $ cdk init app --language typescript
Étape 2 : ajouter une fonction Lambda à votre application

Remplacez le code dans lib/cdk-sam-example-stack.ts par ce qui suit :

import { Stack, StackProps } from 'aws-cdk-lib'; import { Construct } from 'constructs'; import * as lambda from 'aws-cdk-lib/aws-lambda'; export class CdkSamExampleStack extends Stack { constructor(scope: Construct, id: string, props?: StackProps) { super(scope, id, props); new lambda.Function(this, 'MyFunction', { runtime: lambda.Runtime.PYTHON_3_12, handler: 'app.lambda_handler', code: lambda.Code.fromAsset('./my_function'), }); } }
Étape 3 : Ajoutez votre code de fonction Lambda

Créez un répertoire nommé my_function. Dans ce répertoire, créez un fichier nommé app.py.

Commande à exécuter :

macOS / Linux
$ mkdir my_function $ cd my_function $ touch app.py
Windows
$ mkdir my_function $ cd my_function $ type nul > app.py
PowerShell
$ mkdir my_function $ cd my_function $ New-Item -Path "app.py”

Ajoutez le code suivant à app.py:

def lambda_handler(event, context): return "Hello from SAM and the CDK!"
Étape 4 : Testez votre fonction Lambda

Vous pouvez utiliser la CLI AWS SAM pour appeler localement une fonction Lambda que vous définissez dans une application AWS CDK. Pour ce faire, vous avez besoin de l'identifiant de construction de la fonction et du chemin d'accès à votre AWS CloudFormation modèle synthétisé.

Exécutez la commande suivante pour revenir au lib répertoire :

$ cd ..

Commande à exécuter :

$ cdk synth --no-staging
$ sam local invoke MyFunction --no-event -t ./cdk.out/CdkSamExampleStack.template.json

Exemple de sortie :

Invoking app.lambda_handler (python3.9)

START RequestId: 5434c093-7182-4012-9b06-635011cac4f2 Version: $LATEST
"Hello from SAM and the CDK!"
END RequestId: 5434c093-7182-4012-9b06-635011cac4f2
REPORT RequestId: 5434c093-7182-4012-9b06-635011cac4f2	Init Duration: 0.32 ms	Duration: 177.47 ms	Billed Duration: 178 ms	Memory Size: 128 MB	Max Memory Used: 128 MB