TerraformでLambdaレイヤーをデプロイする

TerraformでLambdaレイヤーをデプロイする

Lambdaレイヤーをデプロイします。ソースはパッケージされている前提です。

main.tf

resource "aws_lambda_layer_version" "lambda_layer" {
  filename   = "lambda_layer_payload.zip"
  layer_name = "lambda_layer_name"

  compatible_runtimes = ["nodejs18.x"]
}

compatible_runteimesはnodejs18.xにします。

PublishLayerVersion - AWS Lambda
Creates an AWS Lambda layer from a ZIP archive. Each time you call PublishLayerVersion with the same layer name, a new v...

lambda_layer_payload.zipはプロジェクトルート直下に配置します。S3に配置してs3_bucket,s3_key,s3_object_versionを指定してデプロイすることも可能です。

初期化、適用します。

$ terraform init
$ terraform apply

Lambdaレイヤーがデプロイされます。

TerraformでLambdaレイヤーをデプロイする

レイヤー変更せずに再度terraform applyで適用すると以下メッセージが表示されレイヤーバージョンが上がることはありませんでした。ちなみにzipファイルの内容変更しても同じでした。

No changes. Your infrastructure matches the configuration.

Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed.

Terraform Registry

最後に破棄します。

$ terraform destroy

コメント

タイトルとURLをコピーしました