sl1pm4t / k2tf

Kubernetes YAML to Terraform HCL converter

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ports not supported in Terraform schema for NetworkPolicy

iptizer opened this issue · comments

Example policy:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default-allow-ingress-internal
spec:
  podSelector:
    matchLabels:
      IngressInternal: active
  ingress:
  - from:
    - ipBlock:
        cidr: 10.0.0.0/8
    - ipBlock:
        cidr: 172.16.0.0/12
    - ipBlock:
        cidr: 192.168.0.0/16
    ports:
    - port: 80
      protocol: TCP
    - port: 443
      protocol: TCP

Results in the following warning:

1:58PM Warn | excluding attribute [kubernetes_network_policy.spec.ingress.port] not found in Terraform schema  field=NetworkPolicy.Spec.Ingress.Ports name=default_allow_ingress_internal type=kubernetes_network_policy

And the following tf code:

resource "kubernetes_network_policy" "default_allow_ingress_internal" {
  metadata {
    name = "default-allow-ingress-internal"
  }

  spec {
    pod_selector {
      match_labels = {
        IngressInternal = "active"
      }
    }

    ingress {
      from {
        ip_block {
          cidr = "10.0.0.0/8"
        }
      }

      from {
        ip_block {
          cidr = "172.16.0.0/12"
        }
      }

      from {
        ip_block {
          cidr = "192.168.0.0/16"
        }
      }
    }
  }
}

Quick looks shows schema is pulled from somewhere else, but in my opinion it should be available.