View a markdown version of this page

sam-Metadaten-Ressource - AWS Serverless Application Model

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.

sam-Metadaten-Ressource

Diese Seite enthält Referenzinformationen für den sam metadata resource Ressourcentyp, der für Terraform Projekte verwendet wird.

Argumente

Argument Description
built_output_path Der Pfad zu den eingebauten Artefakten Ihrer AWS Lambda Funktion.
docker_build_args Dekodierte Zeichenfolge des JSON-Objekts mit Docker-Build-Argumenten. Dieses Argument ist optional.
docker_context Der Pfad zu dem Verzeichnis, das den Docker-Image-Build-Kontext enthält.
docker_file

Der Pfad zur Docker-Datei. Dieser Pfad ist relativ zum docker_context Pfad.

Dieses Argument ist optional. Der Standardwert ist Dockerfile.

docker_tag Der Wert des erstellten Docker-Image-Tags. Dieser Wert ist optional.
depends_on Der Pfad zur Erstellungsressource für Ihre Lambda-Funktion oder -Layer. Weitere Informationen finden Sie unter Das depends_on Argument in der Terraform Registrierung.
original_source_code

Der Pfad, in dem Ihre Lambda-Funktion definiert ist. Dieser Wert kann eine Zeichenfolge, ein Array von Zeichenketten oder ein dekodiertes JSON-Objekt als Zeichenfolge sein.

  • Bei String-Arrays wird nur der erste Wert verwendet, da mehrere Codepfade nicht unterstützt werden.

  • Für JSON-Objekte source_code_property muss auch der definiert werden.

resource_name Der Name der Lambda-Funktion.
resource_type

Das Format Ihres Lambda-Funktionspakettyps. Zulässige Werte sind:

  • IMAGE_LAMBDA_FUNCTION

  • LAMBDA_LAYER

  • ZIP_LAMBDA_FUNCTION

source_code_property Der Pfad zum Lambda-Ressourcencode im JSON-Objekt. Definieren Sie diese Eigenschaft, wenn original_source_code es sich um ein JSON-Objekt handelt.

Beispiele

sam-Metadatenressource, die mithilfe des ZIP-Pakettyps auf eine Lambda-Funktion verweist

# Lambda function resource resource "aws_lambda_function" "tf_lambda_func" { filename = "${path.module}/python/hello-world.zip" handler = "index.lambda_handler" runtime = "python3.8" function_name = "function_example" role = aws_iam_role.iam_for_lambda.arn depends_on = [ null_resource.build_lambda_function # function build logic ] } # sam metadata resource resource "null_resource" "sam_metadata_function_example" { triggers = { resource_name = "aws_lambda_function.function_example" resource_type = "ZIP_LAMBDA_FUNCTION" original_source_code = "${path.module}/python" built_output_path = "${path.module}/building/function_example" } depends_on = [ null_resource.build_lambda_function # function build logic ] }

sam-Metadatenressource, die mithilfe des Image-Pakettyps auf eine Lambda-Funktion verweist

resource "null_resource" "sam_metadata_function { triggers = { resource_name = "aws_lambda_function.image_function" resource_type = "IMAGE_LAMBDA_FUNCTION" docker_context = local.lambda_src_path docker_file = "Dockerfile" docker_build_args = jsonencode(var.build_args) docker_tag = "latest" } }

dieselbe Metadatenressource, die auf eine Lambda-Layer verweist

resource "null_resource" "sam_metadata_layer1" { triggers = { resource_name = "aws_lambda_layer_version.layer" resource_type = "LAMBDA_LAYER" original_source_code = local.layer_src built_output_path = "${path.module}/${layer_build_path}" } depends_on = [null_resource.layer_build] }