【问题标题】:How to ignore a block in terraform如何忽略terraform中的块
【发布时间】:2021-12-22 01:32:27
【问题描述】:

我有一个在 Oracle 云中创建 kubernetes 集群资源的 terraform 代码。 我想在集群为公共时忽略 endpoint_config 块,并在集群为私有时执行此块。我怎样才能做到这一点

resource "oci_containerengine_cluster" "cluster" {
  count              = var.deploy_oke_cluster ? 1 : 0
  compartment_id     = var.compartment_id
  kubernetes_version = var.cluster_kubernetes_version
  name               = "oke-${var.environment}"
  vcn_id             = oci_core_virtual_network.base_vcn.id

  endpoint_config {
    is_public_ip_enabled = false
    subnet_id            = oci_core_subnet.snet-apiserver.id
  }
  options {
    add_ons {
      is_kubernetes_dashboard_enabled = true
      is_tiller_enabled               = false
    }

    kubernetes_network_config {
      pods_cidr     = var.pods_cidr
      services_cidr = var.services_cidr
    }
    service_lb_subnet_ids = [oci_core_subnet.snet-pub-lb.id]

  }
}

【问题讨论】:

    标签: terraform terraform-provider-oci


    【解决方案1】:

    您可以使用dynamic blocks

    resource "oci_containerengine_cluster" "cluster" {
      count              = var.deploy_oke_cluster ? 1 : 0
      compartment_id     = var.compartment_id
      kubernetes_version = var.cluster_kubernetes_version
      name               = "oke-${var.environment}"
      vcn_id             = oci_core_virtual_network.base_vcn.id
    
    
      dynamic "endpoint_config" {
    
          for_each = var.is_public == true ? [1] : []    
    
          content {
            is_public_ip_enabled = false
            subnet_id            = oci_core_subnet.snet-apiserver.id
          }
      }
    
    
      options {
        add_ons {
          is_kubernetes_dashboard_enabled = true
          is_tiller_enabled               = false
        }
    
        kubernetes_network_config {
          pods_cidr     = var.pods_cidr
          services_cidr = var.services_cidr
        }
        service_lb_subnet_ids = [oci_core_subnet.snet-pub-lb.id]
    
      }
    }
    

    【讨论】:

    猜你喜欢
    • 2020-08-14
    • 2021-01-03
    • 2021-08-09
    • 2016-12-22
    • 1970-01-01
    • 2019-11-21
    • 1970-01-01
    • 2016-08-04
    • 1970-01-01
    相关资源
    最近更新 更多