Aws lambda 避免在地形规划阶段调用lambda

Aws lambda 避免在地形规划阶段调用lambda,aws-lambda,terraform,terraform-provider-aws,Aws Lambda,Terraform,Terraform Provider Aws,我有一个lambda,我想在terraform应用期间调用它一次,因为它更新了数据库,应该在应用阶段只触发一次。 我的问题是terraform在计划阶段也会调用它。 是否有办法仅在应用阶段运行它? 例如: data“aws\u lambda\u调用”“run\u lambda”{ 函数\u name=“测试” 输入=请求者延迟,但回答供将来参考: 尝试在aws_lamdbda_调用中使用dependens_on:[some_resource]构造。让调用依赖于任何其他资源。如果没有依赖项(我几乎

我有一个lambda,我想在terraform应用期间调用它一次,因为它更新了数据库,应该在应用阶段只触发一次。
我的问题是terraform在计划阶段也会调用它。
是否有办法仅在应用阶段运行它?
例如:

data“aws\u lambda\u调用”“run\u lambda”{
函数\u name=“测试”

输入=请求者延迟,但回答供将来参考: 尝试在aws_lamdbda_调用中使用
dependens_on:[some_resource]
构造。让调用依赖于任何其他资源。如果没有依赖项(我几乎不相信),则引入人工资源,如
time_sleep
。让执行等待1s,并使lambda依赖于它。
通过这种方式,
terraform plan
不会抱怨。

有趣的问题。我怀疑您无法限制此特定资源在计划时调用lambda-它被设置为数据源,因此terraform将“读取”这是在计划阶段进行的。由于您正在使用此lambda编写数据,您将需要其他东西。以下是一个我从未使用过但值得尝试的模块:
data "aws_lambda_invocation" "run_lambda" {
  function_name = "test"

  input = <<JSON
  {}
  JSON
}