【发布时间】:2019-07-26 12:30:54
【问题描述】:
terraform 已调整授权
在 main.tf [for sql config] 我现在有:
resource "google_sql_database_instance" "master" {
name = "${random_id.id.hex}-master"
region = "${var.region}"
database_version = "POSTGRES_9_6"
# allow direct access from work machines
ip_configuration {
authorized_networks = "${var.authorized_networks}"
require_ssl = "${var.sql_require_ssl}"
ipv4_enabled = true
}
}
在哪里
在 variables.tf 我有
variable "authorized_networks" {
description = "The networks that can connect to cloudsql"
type = "list"
default = [
{
name = "work"
value = "xxx.xxx.xx.xxx/32"
}
]
}
其中 xxx.xxx.xx.xxx 是我希望允许的 IP 地址。但是,我不喜欢将它放在我的 variables.tf 文件中,而是放在非源代码控制的 .tfvars 文件中。
对于具有简单值的变量,这很容易,但我不清楚如何使用嵌套结构来做到这一点。用变量替换 xxx.xxx.xx.xxx [例如var.work_ip] 导致错误
variables may not be used here
有什么见解吗?
【问题讨论】:
-
您能否编辑您的问题以使其成为可运行的minimal reproducible example?从这个更加精简的上下文中,并不是 100% 清楚您想要实现的目标或限制。
-
你见过this issue吗?该线程似乎有一些潜在的解决方法,可能使用空资源。自己没有使用过,所以无法提供进一步的见解......
标签: terraform