【问题标题】:Terraform cloud_sql_instance "connection_name" field cannot be setTerraform cloud_sql_instance“connection_name”字段无法设置
【发布时间】:2018-06-13 13:42:25
【问题描述】:

我正在尝试使用 Terraform 创建一个谷歌云 sql 实例。在google_sql_database_instance 资源下定义connection_name 参数时,我在运行terraform apply 时收到以下错误:

Error: google_sql_database_instance.sql_instance: "connection_name": this field cannot be set

我的 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 成功,从值中删除所有: 以及对字符串进行硬编码也会导致失败。

【问题讨论】:

    标签: google-cloud-platform terraform


    【解决方案1】:

    google_sql_database_instanceconnection_name 参数仅用于读取,而不是由用户设置。

    因此,您不应该尝试设置它,而是仅在将输出传递给另一个资源或像这样的输出时才需要它:

    resource "google_sql_database_instance" "sql_instance" {
      name             = "${var.sql_name}"
      region           = "${var.region}"
      database_version = "POSTGRES_9_6"
      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}"
      }
    }
    
    output "connection_name" {
      value = "${google_sql_database_instance.sql_instance.connection_name}"
    }
    

    【讨论】:

    • 我还提出了修复文档的拉取请求:github.com/terraform-providers/terraform-provider-google/pull/…
    • 谢谢!我正在翻译一些前任编写的 gdm 脚本,您可以通过它进行设置
    • 我对 Google Cloud 了解不多,但如果您认为将其设置为默认值之外的其他值会很有用,那么拉取请求应该非常简单。快速浏览了一下,SDK 允许这样做,但添加属性的原始 PR 似乎只是使用它来导出属性而从未设置它。
    猜你喜欢
    • 2022-01-16
    • 1970-01-01
    • 1970-01-01
    • 2019-05-23
    • 2018-11-03
    • 1970-01-01
    • 2016-01-23
    • 2014-09-01
    • 1970-01-01
    相关资源
    最近更新 更多