recurso de metadatos de sam - AWS Serverless Application Model

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

recurso de metadatos de sam

Esta página contiene información de referencia sobre el tipo sam metadata resource de recurso utilizado con Terraform proyectos.

Argumentos

Argumento Descripción
built_output_path La ruta hacia los artefactos construidos por tu AWS Lambda función.
docker_build_args Cadena decodificada del objeto Build Arguments JSON de Docker. Este argumento es opcional.
docker_context La ruta al directorio que contiene el contexto de creación de la imagen de Docker.
docker_file

La ruta del archivo de Docker. Esta ruta es relativa a la ruta docker_context.

Este argumento es opcional. El valor predeterminado es Dockerfile.

docker_tag El valor de la etiqueta de imagen de Docker creada. Este valor es opcional.
depends_on La ruta al recurso de construcción para la función o capa de Lambda. Para obtener más información, consulte El depends_on argumento en el Terraform registro.
original_source_code

La ruta a la que se define la función de Lambda. Este valor puede ser una cadena, un conjunto de cadenas o un JSON objeto decodificado como cadena.

  • En el caso de las matrices de cadenas, solo se utiliza el primer valor, ya que no se admiten varias rutas de código.

  • En el JSON caso de los objetos, también se source_code_property debe definir.

resource_name El nombre de la función de Lambda.
resource_type

El formato del tipo de paquete de funciones de Lambda. Los valores aceptados son:

  • IMAGE_LAMBDA_FUNCTION

  • LAMBDA_LAYER

  • ZIP_LAMBDA_FUNCTION

source_code_property La ruta al código de recursos de Lambda en el JSON objeto. Defina esta propiedad cuando original_source_code sea un JSON objeto.

Ejemplos

sam: recurso de metadatos que hace referencia a una función Lambda mediante ZIP el tipo de paquete

# 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 ] }

recurso de metadatos de sam que hace referencia a una función de Lambda mediante el tipo de paquete de imagen

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" } }

recurso de metadatos sam que hace referencia a una capa de Lambda

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] }