{{if eq .Mode "Multitenant"}}
# Namespaces which must be reachable to all pods, or can reach all pods
# - openshift-dns
# - openshift-ingress
# - openshift-monitoring
# - openshift-kube-apiserver
# - openshift-operator-lifecycle-manager
# - openshift-image-registry
# - openshift-user-workload-monitoring
apiVersion: network.openshift.io/v1
kind: NetNamespace
metadata:
  name: openshift-dns
netid: 0
netname: openshift-dns

---
apiVersion: network.openshift.io/v1
kind: NetNamespace
metadata:
  name: openshift-ingress
netid: 0
netname: openshift-ingress

---
apiVersion: network.openshift.io/v1
kind: NetNamespace
metadata:
  name: openshift-monitoring
netid: 0
netname: openshift-monitoring

---
apiVersion: network.openshift.io/v1
kind: NetNamespace
metadata:
  name: openshift-kube-apiserver
netid: 0
netname: openshift-kube-apiserver

---
apiVersion: network.openshift.io/v1
kind: NetNamespace
metadata:
  name: openshift-operator-lifecycle-manager
netid: 0
netname: openshift-operator-lifecycle-manager

---
apiVersion: network.openshift.io/v1
kind: NetNamespace
metadata:
  name: openshift-image-registry
netid: 0
netname: openshift-image-registry

---
apiVersion: network.openshift.io/v1
kind: NetNamespace
metadata:
  name: openshift-user-workload-monitoring
netid: 0
netname: openshift-user-workload-monitoring

---
# Namespaces which are part of the "control plane" and need to reach each other:
# - kube-system
# - openshift-etcd
# - openshift-etcd-operator
# - openshift-apiserver
# - openshift-service-catalog-apiserver
# - openshift-service-catalog-controller-manager
# - openshift-template-service-broker
# - openshift-ansible-service-broker
# - openshift-authentication
# - openshift-authentication-operator
apiVersion: network.openshift.io/v1
kind: NetNamespace
metadata:
  name: openshift-apiserver
netid: 1
netname: openshift-apiserver

---
apiVersion: network.openshift.io/v1
kind: NetNamespace
metadata:
  name: kube-system
netid: 1
netname: kube-system

---
apiVersion: network.openshift.io/v1
kind: NetNamespace
metadata:
  name: openshift-etcd
netid: 1
netname: openshift-etcd

---
apiVersion: network.openshift.io/v1
kind: NetNamespace
metadata:
  name: openshift-etcd-operator
netid: 1
netname: openshift-etcd-operator


---
apiVersion: network.openshift.io/v1
kind: NetNamespace
metadata:
  name: openshift-service-catalog-apiserver
netid: 1
netname: openshift-service-catalog-apiserver

---
apiVersion: network.openshift.io/v1
kind: NetNamespace
metadata:
  name: openshift-template-service-broker
netid: 1
netname: openshift-template-service-broker

---
apiVersion: network.openshift.io/v1
kind: NetNamespace
metadata:
  name: openshift-ansible-service-broker
netid: 1
netname: openshift-ansible-service-broker

---
apiVersion: network.openshift.io/v1
kind: NetNamespace
metadata:
  name: openshift-service-catalog-controller-manager
netid: 1
netname: openshift-service-catalog-controller-manager

---
apiVersion: network.openshift.io/v1
kind: NetNamespace
metadata:
  name: openshift-authentication
netid: 1
netname: openshift-authentication

---
apiVersion: network.openshift.io/v1
kind: NetNamespace
metadata:
  name: openshift-authentication-operator
netid: 1
netname: openshift-authentication-operator
{{- end}}
