Terraformで既存のLambdaをterraform applyのたびに実行する
こちら↑の実行方法だと引数(input)を変更したりしないと最新のLambdaが実行されないので、terraform destroy
コマンドを実行してから再度terraform apply
コマンドを実行したりする必要があります。
dataブロックを使用したaws_lambda_invocationだとLambdaが修正されてもterraform apply
する度に最新のLambdaが実行されます。
main.tf
data "aws_lambda_invocation" "example" { function_name = "v18" input = <<JSON { "key1": "value1", "key2": "value2" } JSON } output "result_entry" { value = jsondecode(data.aws_lambda_invocation.example.result) }
適用します。
$ terraform apply
Lambdaの結果が返ってきました。次にLambdaを修正しデプロイします。
再度、適用します。
$ terraform apply
修正されたLambdaの結果が返ってくることが確認できます。
Terraform Registry

KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^
コメント