sam metadata resource - AWS Serverless Application Model

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

sam metadata resource

このページには、 で使用されるsam metadata resourceリソースタイプのリファレンス情報が含まれています。Terraform プロジェクト。

トピック

引数

引数 説明
built_output_path AWS Lambda 関数のビルドされたアーティファクトへのパス。
docker_build_args Docker ビルド引数JSONオブジェクトのデコードされた文字列。この引数はオプションです。
docker_context Docker イメージのビルドコンテキストを含むディレクトリへのパス。
docker_file

Docker ファイルへのパス。このパスは、docker_context パスを起点とした相対パスです。

この引数はオプションです。デフォルト値は Dockerfile です。

docker_tag 作成された Docker イメージタグの値。この値はオプションです。
depends_on Lambda 関数またはレイヤーのビルディングリソースへのパス。詳細については、「」の「 depends_on引数」を参照してください。 Terraform レジストリ
original_source_code

Lambda 関数が定義されている場所へのパス。この値は、文字列、文字列の配列、または文字列としてデコードされたJSONオブジェクトです。

  • 複数のコードパスはサポートされていないため、文字列の配列の場合は最初の値のみが使用されます。

  • JSON オブジェクトの場合、 source_code_propertyも定義する必要があります。

resource_name Lambda 関数の名前。
resource_type

Lambda 関数のパッケージタイプの形式。次の値が許容されます。

  • IMAGE_LAMBDA_FUNCTION

  • LAMBDA_LAYER

  • ZIP_LAMBDA_FUNCTION

source_code_property JSON オブジェクト内の Lambda リソースコードへのパス。original_source_code が JSON オブジェクトの場合、このプロパティを定義します。

ZIP パッケージタイプを使用して Lambda 関数を参照する sam メタデータリソース

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

パッケージタイプがイメージの Lambda 関数 を参照する sam metadata resource

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

Lambda レイヤーを参照する sam metadata resource

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