我正在尝试使用Terraform创建一个google cloud sql实例。在connection_name
资源下定义google_sql_database_instance
参数时,我在运行terraform apply
时收到以下错误:
Error: google_sql_database_instance.sql_instance: "connection_name": this field cannot be set
My Terraform阻止:
resource "google_sql_database_instance" "sql_instance" {
name = "${var.sql_name}"
region = "${var.region}"
database_version = "POSTGRES_9_6"
connection_name = "${data.google_project.my_project.project_id}:${var.region}:${var.sql_name}"
project = "${data.google_project.my_project.project_id}"
settings {
tier = "db-custom-6-23040"
disk_size = "${var.sql_disk_size}"
disk_type = "${var.sql_disk_type}"
}
}
删除connection_name
参数会导致成功plan
,并从值中删除所有:
以及对字符串进行硬编码也会导致失败。
答案 0 :(得分:1)
connection_name
的{{1}}参数只能读取,而不是由用户设置。
因此你不应该尝试设置它,而只是在将输出传递给另一个资源或这样的输出时只需要它:
google_sql_database_instance