【问题标题】:Terraform: count and signum [duplicate]Terraform:计数和符号[重复]
【发布时间】:2021-05-17 19:29:57
【问题描述】:

谁能帮我理解当计数函数与使用两个变量的符号一起使用时的含义。这是我不明白的行:

count = "${signum(var.cluster_size_max * var.dynamic_autoscaling_enabled)}"

这是使用 terraform 11。var.cluster_size_max 设置为 1,var.dynamic_autoscaling_enabled 设置为 true。因此,由于两者都是正数(1 和真),它将构建资源。但是文档中的 signum 会检查数字的符号,那么为什么在此处放置一个 true/false 变量,如果它不是 1,0 或 -1,signum 如何读取它?如果第一个变量为 0 或第二个变量为假怎么办 - 它们是否都需要为正才能构建?

【问题讨论】:

标签: amazon-web-services terraform


【解决方案1】:

false 将被视为 0,因此var.cluster_size_max任何值 将导致 0,随后,signum 将是 0。

如果第一个变量为 0 或第二个为 false 会怎样

由于 dynamic_autoscaling_enabled 为 false,signum 将为 0,并且不会创建任何资源。在这种情况下,cluster_size_max 的值无关紧要

他们是否都需要积极才能构建它?

是的。如果cluster_size_max 为负数,count 将为-1,您将收到 terraform error 计数为负数。

【讨论】:

  • 谢谢你,Marcin,但这是否意味着如果 dynamic_autoscaling_enabled 为“真”且 cluster_size_max 为“0”,它仍然会构建?那么是真值还是假值覆盖了 0 或 1 值?
  • @scrow 0 x 10,所以它不会构建。
猜你喜欢
  • 1970-01-01
  • 2011-05-27
  • 1970-01-01
  • 1970-01-01
  • 2015-12-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多