Dies ist der AWS CDK v2-Entwicklerhandbuch. Das ältere CDK v1 wurde am 1. Juni 2022 in die Wartung aufgenommen und der Support wurde am 1. Juni 2023 eingestellt.
Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Erste Schritte mit lokalen Tests
In diesem Thema wird beschrieben, was Sie für die Verwendung der AWS SAM-CLI mit AWS CDK-Anwendungen benötigen, und es enthält Anweisungen zum Erstellen und lokalen Testen einer einfachen AWS CDK-Anwendung.
Voraussetzungen
Um lokal zu testen, müssen Sie die AWS SAM-CLI installieren. Installationsanweisungen finden Sie unter AWS SAM-CLI installieren.
Eine AWS CDK-Anwendung erstellen und lokal testen
Um eine AWS CDK-Anwendung mit der AWS SAM-CLI lokal zu testen, benötigen Sie eine AWS CDK-Anwendung, die eine Lambda-Funktion enthält. Gehen Sie wie folgt vor, um eine grundlegende AWS CDK-Anwendung mit einer Lambda-Funktion zu erstellen. Weitere Informationen finden Sie unter Creating a serverless application using the AWS CDK im AWS Cloud Development Kit (AWS CDK) Developer Guide.
- Schritt 1: Erstellen Sie eine CDK-Anwendung AWS
-
Initialisieren Sie für dieses Tutorial eine AWS CDK-Anwendung, die verwendet. TypeScript
Befehl zum Ausführen:
$ mkdir cdk-sam-example $ cd cdk-sam-example $ cdk init app --language typescript
- Schritt 2: Fügen Sie Ihrer Anwendung eine Lambda-Funktion hinzu
-
Ersetzen Sie den Code
lib/cdk-sam-example-stack.ts
durch folgenden Code: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'), }); } }
- Schritt 3: Fügen Sie Ihren Lambda-Funktionscode hinzu
-
Erstellen Sie ein Verzeichnis mit dem Namen
my_function
. Erstellen Sie in diesem Verzeichnis eine Datei namensapp.py
.Befehl zum Ausführen:
def lambda_handler(event, context): return "Hello from SAM and the CDK!"
- Schritt 4: Testen Sie Ihre Lambda-Funktion
-
Sie können die AWS SAM-CLI verwenden, um lokal eine Lambda-Funktion aufzurufen, die Sie in einer AWS CDK-Anwendung definieren. Dazu benötigen Sie den Konstrukt-Identifier der Funktion und den Pfad zu Ihrer synthetisierten Vorlage. AWS CloudFormation
Führen Sie den folgenden Befehl aus, um zum
lib
Verzeichnis zurückzukehren:$ cd ..
Befehl zum Ausführen:
$ cdk synth --no-staging
$ sam local invoke MyFunction --no-event -t ./cdk.out/CdkSamExampleStack.template.json
Beispielausgabe:
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