bash - 如何将列表作为环境变量传递给 Terraform 使用?

标签 bash shell terraform sh

我正在开发一个包含这样一个变量的 terraform 项目:

variable "datalake_layers" {
  type = list
  default = ["raw", "bronze", "silver", "gold"]
}

现在我想通过环境(os 变量)传递列表。我传递其他操作系统变量的方式是在执行 terraform 命令之前运行 config.sh 文件。 shell 脚本的内容如下所示:

export TF_VAR_tfinfra_storage_akey="some_storage_key"
export TF_VAR_rg_name="some_resourcegroup_name"

如何使用列表而不是字符串实现类似的设置?我可以像这样设置环境变量并以某种方式将其转换为 Terraform 列表吗?我找不到办法做到这一点。或者有更好的方法吗?

export TF_VAR_datalake_layers="["raw", "bronze", "silver", "gold"]"

最佳答案

是的,但是你必须使用单引号:

export TF_VAR_datalake_layers='["raw", "bronze", "silver", "gold"]'

关于bash - 如何将列表作为环境变量传递给 Terraform 使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69715825/

相关文章:

regex - 与 awk 一起使用的正则表达式中的量词表现出意外

linux - 在 Oracle 触发器代码中使用 'exec' 失败

amazon-web-services - 无法使用 localstack dynamoDB 锁定 terraform 状态 : UnrecognizedClientException

macos - 如何设置链接以从 OSX 上的终端打开 Visual Studio Code?

linux - 在 GNU Make Auto Dependency Generation 的上下文中使用时是否需要 sed s g 命令

linux - 如何定位最大的目录

linux - 自定义 PAM 配置 : How can I pass username/password parameters to an pam_exec. 所以模块?

bash - 寻找下一个开放端口

git - github 操作和 terraform 的权限被拒绝

terraform - 如何通过 terraform 设置 GCP CloudSQL