【问题标题】:Why all attributes in the access_config becomes require while the documentation said they are optional?为什么 access_config 中的所有属性都变成必需的,而文档说它们是可选的?
【发布时间】:2023-01-11 13:02:43
【问题描述】:

我是 Terraform 及其 CDK 的新手。我对以下内容感到困惑:

当我尝试使用cdktf deployterraform planterraform apply运行通过cdktf synth生成的tf.json时,控制台一直告诉我access_config内的所有属性都是必需的并发出错误,但我检查了documentation,据说这些字段是可选的。

所以,我想知道这是一个错误还是文档有误?

【问题讨论】:

    标签: terraform terraform-provider-gcp


    【解决方案1】:

    如果您正在检查正确版本的 Terraform 文档并且仍然在 tf plan/apply 中看到需要的这些属性,那么您应该在您的配置中添加这些属性。可能发生文档不是最新的

    【讨论】:

    • 但是,如果我只是将 access_config{} 放入 Google 计算实例的 network_interface 中,例如: ``` "google_compute_instace" "instace"{ # ... 只需跳过基本内容,例如名称、机器类型和启动磁盘等 network_interface{ access_config{} } } ``` 它会起作用,实例将获得公共临时地址,尽管我想在问题中做的是为实例分配一个静态 IP 地址。
    【解决方案2】:

    经过与同事的讨论,我设法解决了这个问题。对于access_config,如果你不想给它们赋值,则必须填写属性并将它们留空:

    "access_config":[{
        "nat_ip":"google_compute_address.some_name.address",
        "public_ptr_domain_name":"",
        "network_tier":""
    }]
    

    【讨论】:

      【解决方案3】:

      与 terraform hcl 相比,在 terraform cdk 中需要使用 access_config。在我们使用 HCL 编写配置的 Terraform 中, access_config 可以留空,但对于 terraform cdk 需要填充可以留空的参数。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-09-08
        • 2012-10-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-04-13
        • 2014-07-14
        • 2011-11-28
        相关资源
        最近更新 更多