【发布时间】:2022-01-23 16:40:27
【问题描述】:
我正在尝试使用 terraform 部署 lambda 函数,代码是用 python 编写的。这是执行该操作的 terraform 代码。
data archive_file UpdateSeqNumInLedgerSummary {
count = (var.environment_id == var.prd_environment) ? 1 : 0
..
..
..
#
}
resource aws_lambda_function update_seqnum_in_indexedledgersummary {
count = (var.environment_id == var.prd_environment) ? 1 : 0
..
..
..
#
}
在部署期间,我还尝试使用 aws_lambda_invocation 调用 lambda 函数。这就是我正在做的事情
data aws_lambda_invocation update_seqnum_invocation {
count = (var.environment_id == var.prd_environment) ? 1 : 0
function_name = aws_lambda_function.update_seqnum_in_indexedledgersummary[count.index].function_name
input = <<JSON
{}
JSON
}
但在部署期间我收到以下错误
Error: Invalid index
on seqnum-update.tf line 124, in data "aws_lambda_invocation" "update_seqnum_invocation":
124: function_name = aws_lambda_function.update_seqnum_in_indexedledgersummary[count.index].function_name
|----------------
| aws_lambda_function.update_seqnum_in_indexedledgersummary is empty tuple
| count.index is 0
The given key does not identify an element in this collection value.
(第 124 行 sn-p 的 count.index 部分带有下划线作为相关子表达式。)
有人可以帮我解决这个问题吗?
【问题讨论】:
-
var.environment_id和var.prd_environment的值是什么? -
请从输出中去除颜色代码,否则难以理解。在运行诸如 plan 或 apply 之类的 terraform 命令时,您可以使用
-no-color参数。 doc -
@MarkoE 都是“prd3”
标签: python terraform terraform-provider-aws