无法在地形中使用总和

unable to use sum in terraform

我在 terraform 中使用 sum 时遇到问题

我的局部变量如下:

> local.total_output
[
  "150",
  "150",
  "150",
]
> sum(local.total_output)


> Error: Invalid function argument

  on <console-input> line 1:
  (source code not available)
    |----------------
    | local.total_output is tuple with 3 elements

Invalid value for "list" parameter: argument must be list, set, or tuple of
number values.

>

我是不是做错了什么?

您的 total_output 是一个 字符串列表 。它应该是数字列表:

[
  150,
  150,
  150,
]

如错误所述,列表中的值应为 type 个数字。您可以使用 for 循环转换它们:

sum([for str in local.total_output: tonumber(str)])

由于 total_output 是本地的,可能会更容易将其声明为数字列表(无引号):

locals {
  total_output = [150, 150, 150]
}