diff --git a/.gitignore b/.gitignore
index 1c464a6..8ae7909 100644
--- a/.gitignore
+++ b/.gitignore
@@ -55,3 +55,4 @@
 
 # test output
 tests/results
+sca-report
diff --git a/Makefile b/Makefile
index c2a5e0a..d87af77 100644
--- a/Makefile
+++ b/Makefile
@@ -235,7 +235,6 @@
 	find python -name '*.pyc' | xargs rm -f
 
 distclean: clean
-	rm -rf ${VENVDIR}
-	rm -rf ./sca_report
+	rm -rf ${VENVDIR} ./sca_report
 
 # end file
diff --git a/k8s/README.md b/k8s/README.md
deleted file mode 100644
index 9d9a36f..0000000
--- a/k8s/README.md
+++ /dev/null
@@ -1,38 +0,0 @@
-## How to deploy read/write core pairs on Kubernetes
-
-The current technique installs a separate rw-core deployment to each Kubernetes node, where each deployment consists of a pair (replicas = 2) of co-located rw-cores. Co-location is enforced by making use of the Kubernetes nodeSelector constraint applied at the pod spec level.
-
-In order for node selection to work, a label must be applied to each node. There is a set of built-in node labels that comes with Kubernetes out of the box, one of which is kubernetes.io/hostname. This label can be used to constrain the deployment of a core pair to a node with a specific hostname. Another approach is to take greater control and create new node labels.
-
-The following discussion assumes installation of the voltha-k8s-playground (https://github.com/ciena/voltha-k8s-playground) which configures three Kubernetes nodes named k8s1, k8s2, and k8s3.
-
-Create a "nodename" label for each Kubernetes node:
-```
-kubectl label nodes k8s1 nodename=k8s1
-kubectl label nodes k8s2 nodename=k8s2
-kubectl label nodes k8s3 nodename=k8s3
-```
-
-Verify that the labels have been applied:
-```
-kubectl get nodes --show-labels
-NAME      STATUS    ROLES         AGE       VERSION   LABELS
-k8s1      Ready     master,node   4h        v1.9.5    ...,kubernetes.io/hostname=k8s1,nodename=k8s1
-k8s2      Ready     node          4h        v1.9.5    ...,kubernetes.io/hostname=k8s2,nodename=k8s2
-k8s3      Ready     node          4h        v1.9.5    ...,kubernetes.io/hostname=k8s3,nodename=k8s3
-```
-
-
-Ensure that a nodeSelector section appears in the deployment's pod spec (such a section should already exist in each manifest):
-```
-      ...
-      nodeSelector:
-        nodename: k8s1
-```
-
-Once the labels have been applied, deploy the 3 core pairs:
-```
-kubectl apply -f k8s/rw-core-pair1.yml
-kubectl apply -f k8s/rw-core-pair2.yml
-kubectl apply -f k8s/rw-core-pair3.yml
-```
diff --git a/k8s/adapters-openolt.yml b/k8s/adapters-openolt.yml
deleted file mode 100644
index 6a1fdaf..0000000
--- a/k8s/adapters-openolt.yml
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 2018 the original author or authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# Opne OLT adapter
-
-apiVersion: v1
-kind: Service
-metadata:
-  name: adapter-openolt
-  namespace: voltha
-spec:
-  clusterIP: None
-  selector:
-    app: adapter-openolt
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
-  name: adapter-openolt
-  namespace: voltha
-spec:
-  replicas: 1
-  selector:
-    matchLabels:
-      app: adapter-openolt
-  template:
-    metadata:
-      labels:
-        app: adapter-openolt
-      annotations:
-        cni: "calico"
-    spec:
-      containers:
-        - name: adapter-openolt
-          image: voltha-adapter-openolt
-          env:
-            - name: NAMESPACE
-              valueFrom:
-                fieldRef:
-                  fieldPath: metadata.namespace
-          args:
-            - "/adapters/adapters/openolt/main.py"
-            - "-v"
-            - "--name=openolt"
-            - "--kafka_adapter=kafka.$(NAMESPACE).svc.cluster.local:9092"
-            - "--kafka_cluster=kafka.$(NAMESPACE).svc.cluster.local:9092"
-            - "--core_topic=rwcore"
-          imagePullPolicy: IfNotPresent
-#add brcm_openomci_onu adapter here if needed
diff --git a/k8s/adapters-ponsim.yml b/k8s/adapters-ponsim.yml
deleted file mode 100644
index d093b2d..0000000
--- a/k8s/adapters-ponsim.yml
+++ /dev/null
@@ -1,106 +0,0 @@
-# Copyright 2018 the original author or authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# Ponsim OLT adapter
-
-apiVersion: v1
-kind: Service
-metadata:
-  name: adapter-ponsim-olt
-  namespace: voltha
-spec:
-  clusterIP: None
-  selector:
-    app: adapter-ponsim-olt
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
-  name: adapter-ponsim-olt
-  namespace: voltha
-spec:
-  replicas: 1
-  selector:
-    matchLabels:
-      app: adapter-ponsim-olt
-  template:
-    metadata:
-      labels:
-        app: adapter-ponsim-olt
-      annotations:
-        cni: "calico"
-    spec:
-      containers:
-        - name: adapter-ponsim-olt
-          image: voltha-adapter-ponsim-olt
-          env:
-            - name: NAMESPACE
-              valueFrom:
-                fieldRef:
-                  fieldPath: metadata.namespace
-          args:
-            - "/voltha/python/adapters/ponsim_olt/main.py"
-            - "-v"
-            - "--name=ponsim_olt"
-            - "--kafka_adapter=kafka.$(NAMESPACE).svc.cluster.local:9092"
-            - "--kafka_cluster=kafka.$(NAMESPACE).svc.cluster.local:9092"
-            - "--core_topic=rwcore"
-          imagePullPolicy: IfNotPresent
----
-
-# Ponsim ONU adapter
-
-apiVersion: v1
-kind: Service
-metadata:
-  name: adapter-ponsim-onu
-  namespace: voltha
-spec:
-  clusterIP: None
-  selector:
-    app: adapter-ponsim-onu
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
-  name: adapter-ponsim-onu
-  namespace: voltha
-spec:
-  replicas: 1
-  selector:
-    matchLabels:
-      app: adapter-ponsim-onu
-  template:
-    metadata:
-      labels:
-        app: adapter-ponsim-onu
-      annotations:
-        cni: "calico"
-    spec:
-      containers:
-        - name: adapter-ponsim-onu
-          image: voltha-adapter-ponsim-onu
-          env:
-            - name: NAMESPACE
-              valueFrom:
-                fieldRef:
-                  fieldPath: metadata.namespace
-          args:
-            - "/voltha/python/adapters/ponsim_onu/main.py"
-            - "-v"
-            - "--name=ponsim_onu"
-            - "--kafka_adapter=kafka.$(NAMESPACE).svc.cluster.local:9092"
-            - "--kafka_cluster=kafka.$(NAMESPACE).svc.cluster.local:9092"
-            - "--core_topic=rwcore"
-          imagePullPolicy: IfNotPresent
diff --git a/k8s/adapters-simulated.yml b/k8s/adapters-simulated.yml
deleted file mode 100644
index ec1b069..0000000
--- a/k8s/adapters-simulated.yml
+++ /dev/null
@@ -1,113 +0,0 @@
-# Copyright 2019 the original author or authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# simulated OLT adapter
-
-apiVersion: v1
-kind: Service
-metadata:
-  name: adapter-simulated-olt
-  namespace: voltha
-spec:
-  clusterIP: None
-  selector:
-    app: adapter-simulated-olt
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
-  name: adapter-simulated-olt
-  namespace: voltha
-spec:
-  replicas: 1
-  selector:
-    matchLabels:
-      app: adapter-simulated-olt
-  template:
-    metadata:
-      labels:
-        app: adapter-simulated-olt
-      annotations:
-        cni: "calico"
-    spec:
-      containers:
-        - name: adapter-simulated-olt
-          image: voltha-adapter-simulated-olt
-          env:
-            - name: NAMESPACE
-              valueFrom:
-                fieldRef:
-                  fieldPath: metadata.namespace
-          args:
-            - "/app/simulated_olt"
-            - "--kafka_adapter_host=kafka.$(NAMESPACE).svc.cluster.local"
-            - "--kafka_adapter_port=9092"
-            - "--kafka_cluster_host=kafka.$(NAMESPACE).svc.cluster.local"
-            - "--kafka_cluster_port=9092"
-            - "--core_topic=rwcore"
-            - "--simulator_topic=simulated_olt"
-            - "--onu_number=1"
-            - "--kv_store_host=etcd.$(NAMESPACE).svc.cluster.local"
-            - "--kv_store_port=2379"
-          imagePullPolicy: IfNotPresent
----
-
-# simulated ONU adapter
-
-apiVersion: v1
-kind: Service
-metadata:
-  name: adapter-simulated-onu
-  namespace: voltha
-spec:
-  clusterIP: None
-  selector:
-    app: adapter-simulated-onu
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
-  name: adapter-simulated-onu
-  namespace: voltha
-spec:
-  replicas: 1
-  selector:
-    matchLabels:
-      app: adapter-simulated-onu
-  template:
-    metadata:
-      labels:
-        app: adapter-simulated-onu
-      annotations:
-        cni: "calico"
-    spec:
-      containers:
-        - name: adapter-simulated-onu
-          image: voltha-adapter-simulated-onu
-          env:
-            - name: NAMESPACE
-              valueFrom:
-                fieldRef:
-                  fieldPath: metadata.namespace
-          args:
-            - "/app/simulated_onu"
-            - "--kafka_adapter_host=kafka.$(NAMESPACE).svc.cluster.local"
-            - "--kafka_adapter_port=9092"
-            - "--kafka_cluster_host=kafka.$(NAMESPACE).svc.cluster.local"
-            - "--kafka_cluster_port=9092"
-            - "--core_topic=rwcore"
-            - "--simulator_topic=simulated_onu"
-            - "--kv_store_host=etcd.$(NAMESPACE).svc.cluster.local"
-            - "--kv_store_port=2379"
-          imagePullPolicy: IfNotPresent
diff --git a/k8s/cli.yml b/k8s/cli.yml
deleted file mode 100644
index bd9e38f..0000000
--- a/k8s/cli.yml
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 2019-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Service
-metadata:
-  name: vcli
-  namespace: voltha
-  labels:
-    name: vcli
-spec:
-  ports:
-    - name: ssh
-      port: 5022
-      targetPort: 22
-  selector:
-    app: vcli
----
-apiVersion: apps/v1beta1
-kind: Deployment
-metadata:
-  name: vcli
-  namespace: voltha
-spec:
-  replicas: 1
-  template:
-    metadata:
-      labels:
-        app: vcli
-      annotations:
-        cni: "calico"
-    spec:
-      containers:
-        - name: vcli
-          image: voltha-cli
-          env:
-            - name: POD_IP
-              valueFrom:
-                fieldRef:
-                  fieldPath: status.podIP
-            - name: NAMESPACE
-              valueFrom:
-                fieldRef:
-                  fieldPath: metadata.namespace
-          args:
-            - "/voltha/python/cli/setup.sh"
-            - "-g afrouter.$(NAMESPACE).svc.cluster.local:55555"
-          ports:
-            - containerPort: 22
-              name: ssh-port
-          imagePullPolicy: IfNotPresent
-
-
diff --git a/k8s/genie-cni-plugin-1.8.yml b/k8s/genie-cni-plugin-1.8.yml
deleted file mode 100644
index e2b0f36..0000000
--- a/k8s/genie-cni-plugin-1.8.yml
+++ /dev/null
@@ -1,223 +0,0 @@
-# Copyright 2019-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
----
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1beta1
-metadata:
-  name: genie-plugin
-rules:
-  - apiGroups:
-      - ""
-    resources:
-      - pods
-    verbs:
-      - get
-      - update
-      - patch
-  - apiGroups:
-      - "alpha.network.k8s.io"
-    resources:
-      - logicalnetworks
-    verbs:
-      - get
-      - update
-      - patch
-  - apiGroups:
-      - "alpha.network.k8s.io"
-    resources:
-      - physicalnetworks
-    verbs:
-      - get
-      - update
-      - patch
-  - apiGroups:
-      - ""
-    resources:
-      - configmaps
-    verbs:
-      - get
-  - apiGroups:
-      - "admissionregistration.k8s.io"
-    resources:
-      - validatingwebhookconfigurations
-    verbs:
-      - get
-      - update
-      - create
-      - delete
-
----
-kind: ClusterRoleBinding
-apiVersion: rbac.authorization.k8s.io/v1beta1
-metadata:
-  name: genie-plugin
-roleRef:
-  apiGroup: rbac.authorization.k8s.io
-  kind: ClusterRole
-  name: genie-plugin
-subjects:
-- kind: ServiceAccount
-  name: genie-plugin
-  namespace: kube-system
-- kind: Group
-  name: system:authenticated
-  apiGroup: rbac.authorization.k8s.io
-
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
-  name: genie-plugin
-  namespace: kube-system
-
----
-# This ConfigMap can be used to configure a self-hosted CNI-Genie installation.
-kind: ConfigMap
-apiVersion: v1
-metadata:
-  name: genie-config
-  namespace: kube-system
-data:
-  # The CNI network configuration to install on each node.
-  cni_genie_network_config: |-
-    {
-        "name": "k8s-pod-network",
-        "type": "genie",
-        "log_level": "info",
-        "datastore_type": "kubernetes",
-        "hostname": "__KUBERNETES_NODE_NAME__",
-        "policy": {
-            "type": "k8s",
-            "k8s_auth_token": "__SERVICEACCOUNT_TOKEN__"
-        },
-        "kubernetes": {
-            "k8s_api_root": "https://__KUBERNETES_SERVICE_HOST__:__KUBERNETES_SERVICE_PORT__",
-            "kubeconfig": "/etc/cni/net.d/genie-kubeconfig"
-        },
-        "romana_root": "http://__ROMANA_SERVICE_HOST__:__ROMANA_SERVICE_PORT__",
-        "segment_label_name": "romanaSegment"
-    }
-
----
-# Install CNI-Genie plugin on each slave node.
-kind: DaemonSet
-apiVersion: extensions/v1beta1
-metadata:
-  name: genie-plugin
-  namespace: kube-system
-  labels:
-    k8s-app: genie
-spec:
-  selector:
-    matchLabels:
-      k8s-app: genie
-  template:
-    metadata:
-      labels:
-        k8s-app: genie
-      annotations:
-        scheduler.alpha.kubernetes.io/critical-pod: ''
-        scheduler.alpha.kubernetes.io/tolerations: |
-          [
-            {
-              "key": "dedicated",
-              "value": "master",
-              "effect": "NoSchedule"
-            },
-            {
-              "key": "CriticalAddonsOnly",
-              "operator": "Exists"
-            }
-          ]
-    spec:
-      hostNetwork: true
-      hostPID: true
-      serviceAccountName: genie-plugin
-      containers:
-        # Create a container with install.sh that
-        # Installs required 00-genie.conf and genie binary
-        # on slave node.
-        - name: install-cni
-          image: quay.io/huawei-cni-genie/genie-plugin:latest 
-          imagePullPolicy: Always 
-          command: ["/launch.sh"]
-          env:
-            - name: CNI_NETWORK_CONFIG
-              valueFrom:
-                configMapKeyRef:
-                  name: genie-config
-                  key: cni_genie_network_config
-            - name: KUBERNETES_NODE_NAME
-              valueFrom:
-                fieldRef:
-                  fieldPath: spec.nodeName
-          volumeMounts:
-            - mountPath: /host/opt/cni/bin
-              name: cni-bin-dir
-            - mountPath: /host/etc/cni/net.d
-              name: cni-net-dir
-      volumes:
-        - name: cni-bin-dir
-          hostPath:
-            path: /opt/cni/bin
-        - name: cni-net-dir
-          hostPath:
-            path: /etc/cni/net.d
-
----
-# Genie network admission controller daemonset configuration
-# Genie network admission controller pods will run only in master nodes
-apiVersion: extensions/v1beta1
-kind: DaemonSet
-metadata:
-  name: genie-network-admission-controller
-  namespace: kube-system
-spec:
-  template:
-    metadata:
-      labels:
-        role: genie-network-admission-controller
-      annotations:
-        scheduler.alpha.kubernetes.io/critical-pod: ''
-    spec:
-      tolerations:
-      - key: node-role.kubernetes.io/master
-        effect: NoSchedule
-      - key: CriticalAddonsOnly
-        operator: Exists
-      nodeSelector:
-        node-role.kubernetes.io/master: ""
-      hostNetwork: true
-      serviceAccountName: genie-plugin
-      containers:
-        - name: genie-network-admission-controller
-          image: quay.io/huawei-cni-genie/genie-admission-controller:latest
-          imagePullPolicy: Always
-          ports:
-            - containerPort: 8000
----
-# Genie network admission controller service
-apiVersion: v1
-kind: Service
-metadata:
-  labels:
-    role: genie-network-admission-controller
-  name: genie-network-admission-controller
-  namespace: kube-system
-spec:
-  ports:
-    - port: 443
-      targetPort: 8000
-  selector:
-    role: genie-network-admission-controller
diff --git a/k8s/kafka.yml b/k8s/kafka.yml
deleted file mode 100644
index a55bb3a..0000000
--- a/k8s/kafka.yml
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 2019-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: v1
-kind: Service
-metadata:
-  name: kafka
-  namespace: voltha
-spec:
-  clusterIP: None
-  selector:
-    app: kafka
-  ports:
-  - protocol: TCP
-    port: 9092
-    targetPort: 9092
----
-apiVersion: apps/v1beta1
-kind: StatefulSet
-metadata:
-  name: kafka
-  namespace: voltha
-spec:
-  serviceName: kafka
-  replicas: 3
-  updateStrategy:
-    type: RollingUpdate
-  selector:
-    matchLabels:
-      app: kafka
-  template:
-    metadata:
-      labels:
-        app: kafka
-      annotations:
-        cni: "calico"
-    spec:
-      terminationGracePeriodSeconds: 10
-      affinity:
-        podAntiAffinity:
-          requiredDuringSchedulingIgnoredDuringExecution:
-            - labelSelector:
-                matchExpressions:
-                  - key: app
-                    operator: In
-                    values:
-                      - kafka
-              topologyKey: kubernetes.io/hostname
-      containers:
-      - name: kafka
-        image: wurstmeister/kafka:2.11-2.0.1
-        ports:
-        - containerPort: 9092
-        env:
-        - name: KAFKA_LISTENERS
-          value: PLAINTEXT://:9092
-        - name: KAFKA_ZOOKEEPER_CONNECT
-          value: zoo1:2181,zoo2:2181,zoo3:2181
-        - name: KAFKA_AUTO_CREATE_TOPICS_ENABLE
-          value: "true"
diff --git a/k8s/namespace.yml b/k8s/namespace.yml
deleted file mode 100644
index 3f5d7b4..0000000
--- a/k8s/namespace.yml
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 2019-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# Observation:
-#    It appears that when a namespace is created, Kubernetes creates
-#    a ServiceAccount called "default" for that new namespace.
-#
-apiVersion: v1
-kind: Namespace
-metadata:
-  name: voltha
diff --git a/k8s/ofagent.yml b/k8s/ofagent.yml
deleted file mode 100644
index 443b439..0000000
--- a/k8s/ofagent.yml
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2019-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1beta1
-kind: Deployment
-metadata:
-  name: ofagent
-  namespace: voltha
-spec:
-  replicas: 3
-  template:
-    metadata:
-      labels:
-        app: ofagent
-      annotations:
-        cni: "calico"
-    spec:
-      terminationGracePeriodSeconds: 10
-      containers:
-      - name: ofagent
-        image: voltha-ofagent
-        imagePullPolicy: IfNotPresent
-        env:
-        - name: NAMESPACE
-          valueFrom:
-            fieldRef:
-              fieldPath: metadata.namespace
-        args:
-        - "/ofagent/ofagent/main.py"
-        - "-v"
-        - "--consul=consul.$(NAMESPACE).svc.cluster.local:8500"
-        - "--controller=onos.$(NAMESPACE).svc.cluster.local:6653"
-        - "--grpc-endpoint=afrouter.$(NAMESPACE).svc.cluster.local:55555"
-        - "--enable-tls"
-        - "--key-file=/ofagent/pki/voltha.key"
-        - "--cert-file=/ofagent/pki/voltha.crt"
diff --git a/k8s/olt.yml b/k8s/olt.yml
deleted file mode 100644
index 92f6ec7..0000000
--- a/k8s/olt.yml
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright 2019-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Service
-metadata:
-   name: olt
-   namespace: voltha
-   labels:
-     name: olt
-spec:
-  ports:
-    - name: grpc
-      port: 50060
-      targetPort: 50060
-  selector:
-    app: olt
----
-apiVersion: apps/v1beta1
-kind: Deployment
-metadata:
-  name: olt
-  namespace: voltha
-spec:
-   replicas: 1
-   template:
-     metadata:
-       labels:
-         app: olt
-       annotations:
-         cni: "calico"
-     spec:
-       containers:
-         - name: olt
-           image: "voltha-ponsim"
-           env:
-             - name: POD_IP
-               valueFrom:
-                 fieldRef:
-                   fieldPath: status.podIP
-             - name: NAMESPACE
-               valueFrom:
-                 fieldRef:
-                   fieldPath: metadata.namespace
-
-           args:
-             - "/app/ponsim"
-             - "-device_type"
-             - "OLT"
-             - "-onus"
-             - "3"
-             - "-internal_if"
-             - "eth0"
-             - "-external_if"
-             - "eth0"
-             - "-vcore_endpoint"
-             - "vcore"
-             - "-promiscuous"
-
-           ports:
-            - containerPort: 50060
-              name: grpc-port
-
-           imagePullPolicy: IfNotPresent
diff --git a/k8s/onos.yml b/k8s/onos.yml
deleted file mode 100644
index 3101534..0000000
--- a/k8s/onos.yml
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 2019-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Service
-metadata:
-   name: onos
-   namespace: voltha
-   labels:
-     name: onos
-spec:
-  ports:
-    - name: ssh
-      port: 8101
-      targetPort: 8101
-    - name: of
-      port: 6653
-      targetPort: 6653
-    - name: ui
-      port: 8181
-      targetPort: 8181
-  selector:
-    app: onos
----
-apiVersion: apps/v1beta1
-kind: Deployment
-metadata:
-  name: onos
-  namespace: voltha
-spec:
-  replicas: 1
-  template:
-    metadata:
-      labels:
-        app: onos
-      annotations:
-        cni: "calico"
-    spec:
-      containers:
-        - name: onos
-          image: voltha-onos
-          env:
-            - name: POD_IP
-              valueFrom:
-                fieldRef:
-                  fieldPath: status.podIP
-            - name: NAMESPACE
-              valueFrom:
-                fieldRef:
-                  fieldPath: metadata.namespace
-            - name: ONOS_APPS
-              value: "drivers,openflow-base"
-          ports:
-            - containerPort: 8101
-              name: ssh-port
-            - containerPort: 6653
-              name: of-port
-            - containerPort: 8181
-              name: ui-port
-          imagePullPolicy: IfNotPresent
diff --git a/k8s/onu.yml b/k8s/onu.yml
deleted file mode 100644
index ca3eee3..0000000
--- a/k8s/onu.yml
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright 2019-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Service
-metadata:
-   name: onu
-   namespace: voltha
-   labels:
-     name: onu
-spec:
-  ports:
-    - name: grpc
-      port: 50061
-      targetPort: 50061
-  selector:
-    app: onu
----
-apiVersion: apps/v1beta1
-kind: Deployment
-metadata:
-  name: onu
-  namespace: voltha
-spec:
-   replicas: 3
-   template:
-     metadata:
-       labels:
-         app: onu
-       annotations:
-         cni: "calico,pon0"
-     spec:
-       containers:
-         - name: onu
-           image: "voltha-ponsim"
-           env:
-             - name: POD_IP
-               valueFrom:
-                 fieldRef:
-                   fieldPath: status.podIP
-             - name: NAMESPACE
-               valueFrom:
-                 fieldRef:
-                   fieldPath: metadata.namespace
-
-           args:
-             - "/app/ponsim"
-             - "-device_type"
-             - "ONU"
-             - "-parent_addr"
-             - "olt"
-             - "-grpc_port"
-             - "50061"
-             - "-internal_if"
-             - "eth0"
-             - "-external_if"
-             - "eth1"
-             - "-promiscuous"
-
-           ports:
-            - containerPort: 50061
-              name: grpc-port
-
-           imagePullPolicy: IfNotPresent
diff --git a/k8s/operator/etcd/cluster-role-binding.yml b/k8s/operator/etcd/cluster-role-binding.yml
deleted file mode 100644
index 50f8a31..0000000
--- a/k8s/operator/etcd/cluster-role-binding.yml
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: rbac.authorization.k8s.io/v1beta1
-kind: ClusterRoleBinding
-metadata:
-  name: etcd-operator
-roleRef:
-  apiGroup: rbac.authorization.k8s.io
-  kind: ClusterRole
-  name: etcd-operator
-subjects:
-- kind: ServiceAccount
-  name: default
-  namespace: voltha
diff --git a/k8s/operator/etcd/cluster-role.yml b/k8s/operator/etcd/cluster-role.yml
deleted file mode 100644
index bb11dcc..0000000
--- a/k8s/operator/etcd/cluster-role.yml
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: rbac.authorization.k8s.io/v1beta1
-kind: ClusterRole
-metadata:
-  name: etcd-operator
-rules:
-- apiGroups:
-  - etcd.database.coreos.com
-  resources:
-  - etcdclusters
-  verbs:
-  - "*"
-- apiGroups:
-  - apiextensions.k8s.io
-  resources:
-  - customresourcedefinitions
-  verbs:
-  - "*"
-- apiGroups:
-  - storage.k8s.io
-  resources:
-  - storageclasses
-  verbs:
-  - "*"
-- apiGroups: 
-  - ""
-  resources:
-  - pods
-  - services
-  - endpoints
-  - persistentvolumeclaims
-  - events
-  verbs:
-  - "*"
-- apiGroups:
-  - apps
-  resources:
-  - deployments
-  verbs:
-  - "*"
-
diff --git a/k8s/operator/etcd/etcd_cluster.yml b/k8s/operator/etcd/etcd_cluster.yml
deleted file mode 100644
index 1bfb673..0000000
--- a/k8s/operator/etcd/etcd_cluster.yml
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 2019-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: "etcd.database.coreos.com/v1beta2"
-kind: "EtcdCluster"
-metadata:
-  name: etcd
-  namespace: voltha
-spec:
-  size: 3
-  version: "3.2.18"
-  pod:
-    annotations:
-      cni: "calico"
diff --git a/k8s/operator/etcd/operator.yml b/k8s/operator/etcd/operator.yml
deleted file mode 100644
index 7df622a..0000000
--- a/k8s/operator/etcd/operator.yml
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
-  name: etcd-operator
-  namespace: voltha
-spec:
-  replicas: 1
-  template:
-    metadata:
-      labels:
-        name: etcd-operator
-      annotations:
-        cni: "calico"
-    spec:
-      containers:
-      - name: etcd-operator
-        image: quay.io/coreos/etcd-operator:v0.9.2
-        command:
-        - etcd-operator
-        env:
-        - name: MY_POD_NAMESPACE
-          valueFrom:
-            fieldRef:
-              fieldPath: metadata.namespace
-        - name: MY_POD_NAME
-          valueFrom:
-            fieldRef:
-              fieldPath: metadata.name
-
diff --git a/k8s/rg.yml b/k8s/rg.yml
deleted file mode 100644
index d6c99b1..0000000
--- a/k8s/rg.yml
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: apps/v1beta1
-kind: Deployment
-metadata:
-  name: rg
-  namespace: voltha
-spec:
-   replicas: 1
-   template:
-     metadata:
-       labels:
-         app: rg
-       annotations:
-         cni: "pon0"
-     spec:
-       containers:
-         - name: rg
-           image: "voltha-tester:latest"
-           env:
-             - name: POD_IP
-               valueFrom:
-                 fieldRef:
-                   fieldPath: status.podIP
-             - name: NAMESPACE
-               valueFrom:
-                 fieldRef:
-                   fieldPath: metadata.namespace
-           command: [ "/bin/bash", "-c", "trap : TERM INT; sleep infinity & wait" ]
-           imagePullPolicy: Never
diff --git a/k8s/ro-core.yml b/k8s/ro-core.yml
deleted file mode 100644
index 2e7d78e..0000000
--- a/k8s/ro-core.yml
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 2018 the original author or authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Service
-metadata:
-  name: ro-core
-  namespace: voltha
-spec:
-  clusterIP: None
-  ports:
-    - name: grpc
-      port: 50057
-      targetPort: 50057
-  selector:
-    app: ro-core
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
-  name: ro-core
-  namespace: voltha
-spec:
-  replicas: 3
-  selector:
-    matchLabels:
-      app: ro-core
-  template:
-    metadata:
-      labels:
-        app: ro-core
-      annotations:
-        cni: "calico"
-    spec:
-      containers:
-        - name: voltha
-          image: voltha-ro-core
-          env:
-            - name: NAMESPACE
-              valueFrom:
-                fieldRef:
-                  fieldPath: metadata.namespace
-            - name: POD_IP
-              valueFrom:
-                fieldRef:
-                  fieldPath: status.podIP
-          args:
-            - "/app/ro_core"
-            - "-kv_store_type=etcd"
-            - "-kv_store_host=etcd.$(NAMESPACE).svc.cluster.local"
-            - "-kv_store_port=2379"
-            - "-grpc_host=$(POD_IP)"
-            - "-grpc_port=50057"
-            - "-banner=true"
-            - "-ro_core_topic=rocore"
-            - "-log_level=0"
-          ports:
-            - containerPort: 50057
-              name: grpc-port
-          imagePullPolicy: IfNotPresent
-
-
-
diff --git a/k8s/rw-core-pair1.yml b/k8s/rw-core-pair1.yml
deleted file mode 100644
index 0861d4d..0000000
--- a/k8s/rw-core-pair1.yml
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 2018 the original author or authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Service
-metadata:
-  name: rw-core1
-  namespace: voltha
-spec:
-  clusterIP: None
-  ports:
-    - name: grpc
-      port: 50057
-      targetPort: 50057
-  selector:
-    app: rw-core
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
-  name: rw-core1
-  namespace: voltha
-spec:
-  replicas: 2 
-  selector:
-    matchLabels:
-      app: rw-core
-  template:
-    metadata:
-      labels:
-        app: rw-core
-      annotations:
-        cni: "calico"
-    spec:
-      containers:
-        - name: voltha
-          image: voltha-rw-core
-          env:
-            - name: NAMESPACE
-              valueFrom:
-                fieldRef:
-                  fieldPath: metadata.namespace
-            - name: POD_IP
-              valueFrom:
-                fieldRef:
-                  fieldPath: status.podIP
-          args:
-            - "/app/rw_core"
-            - "-kv_store_type=etcd"
-            - "-kv_store_host=etcd.$(NAMESPACE).svc.cluster.local"
-            - "-kv_store_port=2379"
-            - "-grpc_host=$(POD_IP)"
-            - "-grpc_port=50057"
-            - "-banner=true"
-            - "-kafka_adapter_host=kafka.$(NAMESPACE).svc.cluster.local"
-            - "-kafka_adapter_port=9092"
-            - "-kafka_cluster_host=kafka.$(NAMESPACE).svc.cluster.local"
-            - "-kafka_cluster_port=9092"
-            - "-rw_core_topic=rwcore"
-            - "-kv_store_data_prefix=service/voltha"
-            - "-in_competing_mode=true"
-            - "-timeout_long_request=5000"
-            - "-log_level=0"
-          ports:
-            - containerPort: 50057
-              name: grpc-port
-          imagePullPolicy: IfNotPresent
-      nodeSelector:
-        nodename: k8s1
-
-
-
diff --git a/k8s/rw-core-pair2.yml b/k8s/rw-core-pair2.yml
deleted file mode 100644
index 59a4219..0000000
--- a/k8s/rw-core-pair2.yml
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 2018 the original author or authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Service
-metadata:
-  name: rw-core2
-  namespace: voltha
-spec:
-  clusterIP: None
-  ports:
-    - name: grpc
-      port: 50057
-      targetPort: 50057
-  selector:
-    app: rw-core
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
-  name: rw-core2
-  namespace: voltha
-spec:
-  replicas: 2 
-  selector:
-    matchLabels:
-      app: rw-core
-  template:
-    metadata:
-      labels:
-        app: rw-core
-      annotations:
-        cni: "calico"
-    spec:
-      containers:
-        - name: voltha
-          image: voltha-rw-core
-          env:
-            - name: NAMESPACE
-              valueFrom:
-                fieldRef:
-                  fieldPath: metadata.namespace
-            - name: POD_IP
-              valueFrom:
-                fieldRef:
-                  fieldPath: status.podIP
-          args:
-            - "/app/rw_core"
-            - "-kv_store_type=etcd"
-            - "-kv_store_host=etcd.$(NAMESPACE).svc.cluster.local"
-            - "-kv_store_port=2379"
-            - "-grpc_host=$(POD_IP)"
-            - "-grpc_port=50057"
-            - "-banner=true"
-            - "-kafka_adapter_host=kafka.$(NAMESPACE).svc.cluster.local"
-            - "-kafka_adapter_port=9092"
-            - "-kafka_cluster_host=kafka.$(NAMESPACE).svc.cluster.local"
-            - "-kafka_cluster_port=9092"
-            - "-rw_core_topic=rwcore"
-            - "-kv_store_data_prefix=service/voltha"
-            - "-in_competing_mode=true"
-            - "-timeout_long_request=5000"
-            - "-log_level=0"
-          ports:
-            - containerPort: 50057
-              name: grpc-port
-          imagePullPolicy: IfNotPresent
-      nodeSelector:
-        nodename: k8s2
-
-
-
diff --git a/k8s/rw-core-pair3.yml b/k8s/rw-core-pair3.yml
deleted file mode 100644
index 826bf5f..0000000
--- a/k8s/rw-core-pair3.yml
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 2018 the original author or authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Service
-metadata:
-  name: rw-core3
-  namespace: voltha
-spec:
-  clusterIP: None
-  ports:
-    - name: grpc
-      port: 50057
-      targetPort: 50057
-  selector:
-    app: rw-core
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
-  name: rw-core3
-  namespace: voltha
-spec:
-  replicas: 2 
-  selector:
-    matchLabels:
-      app: rw-core
-  template:
-    metadata:
-      labels:
-        app: rw-core
-      annotations:
-        cni: "calico"
-    spec:
-      containers:
-        - name: voltha
-          image: voltha-rw-core
-          env:
-            - name: NAMESPACE
-              valueFrom:
-                fieldRef:
-                  fieldPath: metadata.namespace
-            - name: POD_IP
-              valueFrom:
-                fieldRef:
-                  fieldPath: status.podIP
-          args:
-            - "/app/rw_core"
-            - "-kv_store_type=etcd"
-            - "-kv_store_host=etcd.$(NAMESPACE).svc.cluster.local"
-            - "-kv_store_port=2379"
-            - "-grpc_host=$(POD_IP)"
-            - "-grpc_port=50057"
-            - "-banner=true"
-            - "-kafka_adapter_host=kafka.$(NAMESPACE).svc.cluster.local"
-            - "-kafka_adapter_port=9092"
-            - "-kafka_cluster_host=kafka.$(NAMESPACE).svc.cluster.local"
-            - "-kafka_cluster_port=9092"
-            - "-rw_core_topic=rwcore"
-            - "-kv_store_data_prefix=service/voltha"
-            - "-in_competing_mode=true"
-            - "-timeout_long_request=5000"
-            - "-log_level=0"
-          ports:
-            - containerPort: 50057
-              name: grpc-port
-          imagePullPolicy: IfNotPresent
-      nodeSelector:
-        nodename: k8s3
-
-
-
diff --git a/k8s/single-node/README.md b/k8s/single-node/README.md
deleted file mode 100644
index a04310b..0000000
--- a/k8s/single-node/README.md
+++ /dev/null
@@ -1,39 +0,0 @@
-## Running Voltha 2 in a Single-node Kubernetes Environment
-
-One way to do this is to set up the Vagrant environment for Voltha 1 by following the instructions
-in the BUILD.md file from the Voltha 1 repository at https://github.com/opencord/voltha.
-
-To build the Voltha 2 images, follow the instructions in voltha-go/python/adapters/README.md and
-ensure those images are available from within the Vagrant environment.
-
-Copy the appropriate Kubernetes manifests from the voltha-go/k8s directory.
-
-### Deploying Voltha 2
-
-To deploy Voltha 2 apply the following manifests (On a single node the affinity router is not required):
-```
-k8s/namespace.yml
-k8s/single-node/zookeeper.yml
-k8s/single-node/kafka.yml
-k8s/operator/etcd/cluster-role.yml
-k8s/operator/etcd/cluster-role-binding.yml
-k8s/operator/etcd/operator.yml
-k8s/single-node/etcd_cluster.yml
-k8s/single-node/rw-core.yml
-k8s/adapters-ponsim.yml
-k8s/single-node/ofagent.yml
-k8s/single-node/cli.yml
-```
-
-### Running PONsim
-
-To deploy the pods required to create PONsim devices, run ONOS,  and test EAP authentication:
-```
-k8s/genie-cni-plugin-1.8.yml
-k8s/single-node/freeradius-config.yml
-k8s/single-node/freeradius.yml
-k8s/onos.yml
-k8s/single-node/olt.yml
-k8s/single-node/onu.yml
-k8s/rg.yml
-```
diff --git a/k8s/single-node/cli.yml b/k8s/single-node/cli.yml
deleted file mode 100644
index 680d172..0000000
--- a/k8s/single-node/cli.yml
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: v1
-kind: Service
-metadata:
-  name: vcli
-  namespace: voltha
-  labels:
-    name: vcli
-spec:
-  ports:
-    - name: ssh
-      port: 5022
-      targetPort: 22
-  selector:
-    app: vcli
----
-apiVersion: apps/v1beta1
-kind: Deployment
-metadata:
-  name: vcli
-  namespace: voltha
-spec:
-  replicas: 1
-  template:
-    metadata:
-      labels:
-        app: vcli
-      annotations:
-        cni: "calico"
-    spec:
-      containers:
-        - name: vcli
-          image: voltha-cli
-          env:
-            - name: POD_IP
-              valueFrom:
-                fieldRef:
-                  fieldPath: status.podIP
-            - name: NAMESPACE
-              valueFrom:
-                fieldRef:
-                  fieldPath: metadata.namespace
-          args:
-            - "/voltha/python/cli/setup.sh"
-            - "-g rw-core:50057"
-          ports:
-            - containerPort: 22
-              name: ssh-port
-          imagePullPolicy: Never
-
-
diff --git a/k8s/single-node/etcd-cluster.yml b/k8s/single-node/etcd-cluster.yml
deleted file mode 100644
index 61a35fa..0000000
--- a/k8s/single-node/etcd-cluster.yml
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: "etcd.database.coreos.com/v1beta2"
-kind: "EtcdCluster"
-metadata:
-  name: etcd
-  namespace: voltha
-spec:
-  size: 1
-  version: "3.2.18"
-  pod:
-    annotations:
-      cni: "calico"
-
diff --git a/k8s/single-node/freeradius-config.yml b/k8s/single-node/freeradius-config.yml
deleted file mode 100644
index 3379149..0000000
--- a/k8s/single-node/freeradius-config.yml
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: v1
-data:
-  clients.conf: |
-    client 192.168.0.0/16 {
-      secret = SECRET
-    }
-  users: |
-    user Cleartext-Password := "password", MS-CHAP-Use-NTLM-Auth := 0
-
-kind: ConfigMap
-metadata:
-  name: freeradius-config
-  namespace: voltha
diff --git a/k8s/single-node/freeradius.yml b/k8s/single-node/freeradius.yml
deleted file mode 100644
index 7bfb39c..0000000
--- a/k8s/single-node/freeradius.yml
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 2019-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: v1
-kind: Service
-metadata:
-   name: freeradius
-   namespace: voltha
-   labels:
-     name: freeradius
-spec:
-  clusterIP: None
-  ports:
-    - name: radius-auth
-      protocol: UDP
-      port: 1812
-      targetPort: 1812
-    - name: radius-acc
-      protocol: UDP
-      port: 1813
-      targetPort: 1813
-    - name: radius
-      port: 18120
-      targetPort: 18120
-  selector:
-    app: freeradius
----
-apiVersion: apps/v1beta1
-kind: Deployment
-metadata:
-  name: freeradius
-  namespace: voltha
-spec:
-  replicas: 1
-  template:
-    metadata:
-      labels:
-        app: freeradius
-      annotations:
-        cni: "calico"
-    spec:
-      containers:
-        - name: freeradius
-          image: "tpdock/freeradius"
-          env:
-            - name: POD_IP
-              valueFrom:
-                fieldRef:
-                  fieldPath: status.podIP
-            - name: NAMESPACE
-              valueFrom:
-                fieldRef:
-                  fieldPath: metadata.namespace
-            - name: RADIUS_LISTEN_IP
-              value: "*"
-            - name: USERS_FILE
-              value: "/etc/raddb/users"
-            - name: RADIUS_CLIENTS
-              value: "SECRET@192.168.0.0/16"
-          ports:
-            - containerPort: 1812
-              name: radauth-port
-            - containerPort: 1813
-              name: radacc-port
-            - containerPort: 18120
-              name: radius-port
-          volumeMounts:
-            - name: freeradius-config
-              mountPath: /etc/raddb/users
-              subPath: users
-      volumes:
-        - name: freeradius-config
-          configMap:
-            name: freeradius-config
diff --git a/k8s/single-node/kafka.yml b/k8s/single-node/kafka.yml
deleted file mode 100644
index a8a8d71..0000000
--- a/k8s/single-node/kafka.yml
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: v1
-kind: Service
-metadata:
-  name: kafka
-  namespace: voltha
-spec:
-  clusterIP: None
-  selector:
-    app: kafka
-  ports:
-  - protocol: TCP
-    port: 9092
-    targetPort: 9092
----
-apiVersion: apps/v1beta1
-kind: StatefulSet
-metadata:
-  name: kafka
-  namespace: voltha
-spec:
-  serviceName: kafka
-  replicas: 1
-  selector:
-    matchLabels:
-      app: kafka
-  template:
-    metadata:
-      labels:
-        app: kafka
-      annotations:
-        cni: "calico"
-    spec:
-      terminationGracePeriodSeconds: 10
-      containers:
-      - name: kafka
-        image: wurstmeister/kafka:2.11-2.0.1
-        ports:
-        - containerPort: 9092
-        env:
-        - name: KAFKA_LISTENERS
-          value: PLAINTEXT://:9092
-        - name: KAFKA_ZOOKEEPER_CONNECT
-          value: zoo:2181
-        - name: KAFKA_AUTO_CREATE_TOPICS_ENABLE
-          value: "true"
diff --git a/k8s/single-node/netcfg.json b/k8s/single-node/netcfg.json
deleted file mode 100644
index 1936397..0000000
--- a/k8s/single-node/netcfg.json
+++ /dev/null
@@ -1,70 +0,0 @@
-{
- "apps": {
-   "org.opencord.aaa" : {
-         "AAA": {
-           "nasIp": "onos.voltha.svc.cluster.local",
-           "nasMac": "BA:6D:26:25:44:AA",
-           "radiusSecret": "SECRET",
-           "radiusIp": "freeradius.voltha.svc.cluster.local",
-           "radiusServerPort": "1812",
-           "radiusConnectionType": "socket",
-           "packetCustomizer": "sample"
-         }
-     },
-   "org.opencord.sadis" : {
-     "sadis" : {
-       "integration" : {
-           "cache" : {
-             "enabled" : true,
-             "maxsize" : 50,
-             "ttl" : "PT1m"
-           }
-       },
-       "entries" : [ {
-           "id" : "PSMO12345678",
-           "cTag" : 2,
-           "sTag" : 2,
-           "nasPortId" : "uni-128"
-           },{
-           "id" : "uni-129",
-           "cTag" : 2,
-           "sTag" : 2,
-           "nasPortId" : "uni-129"
-           },{
-           "id" : "uni-130",
-           "cTag" : 2,
-           "sTag" : 2,
-           "nasPortId" : "uni-130"
-           },{
-           "id" : "uni-131",
-           "cTag" : 2,
-           "sTag" : 2,
-           "nasPortId" : "uni-131"
-           }, {
-           "id" : "olt:50060",
-           "hardwareIdentifier" : "aa:bb:cc:dd:ee:ff",
-           "uplinkPort" : 65536
-           } ]
-     }
-   },
-   "org.opencord.dhcpl2relay" : {
-          "dhcpl2relay" : {
-              "dhcpServerConnectPoints" : [ "of:0000aabbccddeeff/65536" ],
-              "useOltUplinkForServerPktInOut" : true
-          }
-   }
- },
- "devices": {
-   "of:0000aabbccddeeff": {
-     "basic": {
-       "driver": "pmc-olt"
-     },
-     "accessDevice": {
-       "uplink": "0",
-       "vlan": "2"
-     }
-   }
- },
- "ports" : { 
- }
-}
diff --git a/k8s/single-node/ofagent.yml b/k8s/single-node/ofagent.yml
deleted file mode 100644
index ec603f5..0000000
--- a/k8s/single-node/ofagent.yml
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2019-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1beta1
-kind: Deployment
-metadata:
-  name: ofagent
-  namespace: voltha
-spec:
-  replicas: 1
-  template:
-    metadata:
-      labels:
-        app: ofagent
-      annotations:
-        cni: "calico"
-    spec:
-      terminationGracePeriodSeconds: 10
-      containers:
-      - name: ofagent
-        image: volthacore/voltha-ofagent:rich
-        imagePullPolicy: Always
-        env:
-        - name: NAMESPACE
-          valueFrom:
-            fieldRef:
-              fieldPath: metadata.namespace
-        args:
-        - "/ofagent/ofagent/main.py"
-        - "-v"
-        - "--consul=consul.$(NAMESPACE).svc.cluster.local:8500"
-        - "--controller=onos:6653"
-        - "--grpc-endpoint=rw-core.$(NAMESPACE).svc.cluster.local:50057"
-        - "--enable-tls"
-        - "--key-file=/ofagent/pki/voltha.key"
-        - "--cert-file=/ofagent/pki/voltha.crt"
diff --git a/k8s/single-node/olt.yml b/k8s/single-node/olt.yml
deleted file mode 100644
index ab12b5a..0000000
--- a/k8s/single-node/olt.yml
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: v1
-kind: Service
-metadata:
-   name: olt
-   namespace: voltha
-   labels:
-     name: olt
-spec:
-  ports:
-    - name: grpc
-      port: 50060
-      targetPort: 50060
-  selector:
-    app: olt
----
-apiVersion: apps/v1beta1
-kind: Deployment
-metadata:
-  name: olt
-  namespace: voltha
-spec:
-   replicas: 1
-   template:
-     metadata:
-       labels:
-         app: olt
-       annotations:
-         cni: "calico"
-     spec:
-       containers:
-         - name: olt
-           image: "voltha/voltha-ponsim:latest"
-           env:
-             - name: POD_IP
-               valueFrom:
-                 fieldRef:
-                   fieldPath: status.podIP
-             - name: NAMESPACE
-               valueFrom:
-                 fieldRef:
-                   fieldPath: metadata.namespace
-
-           args:
-             - "/app/ponsim"
-             - "-device_type"
-             - "OLT"
-             - "-onus"
-             - "1"
-             - "-internal_if"
-             - "eth0"
-             - "-external_if"
-             - "eth0"
-             - "-vcore_endpoint"
-             - "rw-core"
-             - "-promiscuous"
-             - "-verbose"
-           ports:
-            - containerPort: 50060
-              name: grpc-port
-
-           imagePullPolicy: Never
diff --git a/k8s/single-node/onu.yml b/k8s/single-node/onu.yml
deleted file mode 100644
index 1522e70..0000000
--- a/k8s/single-node/onu.yml
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: v1
-kind: Service
-metadata:
-   name: onu
-   namespace: voltha
-   labels:
-     name: onu
-spec:
-  ports:
-    - name: grpc
-      port: 50061
-      targetPort: 50061
-  selector:
-    app: onu
----
-apiVersion: apps/v1beta1
-kind: Deployment
-metadata:
-  name: onu
-  namespace: voltha
-spec:
-   replicas: 1
-   template:
-     metadata:
-       labels:
-         app: onu
-       annotations:
-         cni: "calico,pon1"
-     spec:
-       containers:
-         - name: onu
-           image: "voltha/voltha-ponsim:latest"
-           env:
-             - name: POD_IP
-               valueFrom:
-                 fieldRef:
-                   fieldPath: status.podIP
-             - name: NAMESPACE
-               valueFrom:
-                 fieldRef:
-                   fieldPath: metadata.namespace
-
-           args:
-             - "/app/ponsim"
-             - "-device_type"
-             - "ONU"
-             - "-parent_addr"
-             - "olt"
-             - "-grpc_port"
-             - "50061"
-             - "-internal_if"
-             - "eth0"
-             - "-external_if"
-             - "eth1"
-             - "-promiscuous"
-             - "-verbose"
-           ports:
-            - containerPort: 50061
-              name: grpc-port
-
-           imagePullPolicy: Never
diff --git a/k8s/single-node/ro-core.yml b/k8s/single-node/ro-core.yml
deleted file mode 100644
index b2f278f..0000000
--- a/k8s/single-node/ro-core.yml
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 2018 the original author or authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Service
-metadata:
-  name: ro-core
-  namespace: voltha
-spec:
-  clusterIP: None
-  ports:
-    - name: grpc
-      port: 50057
-      targetPort: 50057
-  selector:
-    app: ro-core
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
-  name: ro-core
-  namespace: voltha
-spec:
-  replicas: 1 
-  selector:
-    matchLabels:
-      app: ro-core
-  template:
-    metadata:
-      labels:
-        app: ro-core
-      annotations:
-        cni: "calico"
-    spec:
-      containers:
-        - name: voltha
-          image: voltha-ro-core
-          env:
-            - name: NAMESPACE
-              valueFrom:
-                fieldRef:
-                  fieldPath: metadata.namespace
-            - name: POD_IP
-              valueFrom:
-                fieldRef:
-                  fieldPath: status.podIP
-          args:
-            - "/app/ro_core"
-            - "-kv_store_type=etcd"
-            - "-kv_store_host=etcd.$(NAMESPACE).svc.cluster.local"
-            - "-kv_store_port=2379"
-            - "-grpc_port=50057"
-            - "-banner=true"
-            - "-ro_core_topic=rocore"
-            - "-log_level=0"
-          ports:
-            - containerPort: 50057
-              name: grpc-port
-          imagePullPolicy: IfNotPresent
-
-
-
diff --git a/k8s/single-node/rw-core.yml b/k8s/single-node/rw-core.yml
deleted file mode 100644
index b25d94a..0000000
--- a/k8s/single-node/rw-core.yml
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 2018 the original author or authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Service
-metadata:
-  name: rw-core
-  namespace: voltha
-spec:
-  clusterIP: None
-  ports:
-    - name: grpc
-      port: 50057
-      targetPort: 50057
-  selector:
-    app: rw-core
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
-  name: rw-core
-  namespace: voltha
-spec:
-  replicas: 1 
-  selector:
-    matchLabels:
-      app: rw-core
-  template:
-    metadata:
-      labels:
-        app: rw-core
-      annotations:
-        cni: "calico"
-    spec:
-      containers:
-        - name: voltha
-          image: voltha-rw-core
-          env:
-            - name: NAMESPACE
-              valueFrom:
-                fieldRef:
-                  fieldPath: metadata.namespace
-            - name: POD_IP
-              valueFrom:
-                fieldRef:
-                  fieldPath: status.podIP
-          args:
-            - "/app/rw_core"
-            - "-kv_store_type=etcd"
-            - "-kv_store_host=etcd.$(NAMESPACE).svc.cluster.local"
-            - "-kv_store_port=2379"
-            - "-grpc_port=50057"
-            - "-banner=true"
-            - "-kafka_adapter_host=kafka.$(NAMESPACE).svc.cluster.local"
-            - "-kafka_adapter_port=9092"
-            - "-kafka_cluster_host=kafka.$(NAMESPACE).svc.cluster.local"
-            - "-kafka_cluster_port=9092"
-            - "-rw_core_topic=rwcore"
-            - "-kv_store_data_prefix=service/voltha"
-            - "-in_competing_mode=false"
-            - "-timeout_long_request=5000"
-            - "-log_level=0"
-          ports:
-            - containerPort: 50057
-              name: grpc-port
-          imagePullPolicy: IfNotPresent
-
-
-
diff --git a/k8s/single-node/zookeeper.yml b/k8s/single-node/zookeeper.yml
deleted file mode 100644
index ffd3e12..0000000
--- a/k8s/single-node/zookeeper.yml
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-apiVersion: v1
-kind: Service
-metadata:
-  name: zoo
-  namespace: voltha
-spec:
-  clusterIP: None
-  selector:
-    app: zookeeper
-  ports:
-  - name: client
-    port: 2181
-    targetPort: 2181
-  - name: follower
-    port: 2888
-    targetPort: 2888
-  - name: leader
-    port: 3888
-    targetPort: 3888
----
-apiVersion: apps/v1beta1
-kind: StatefulSet
-metadata:
-  name: zookeeper
-  namespace: voltha
-spec:
-  serviceName: zoo
-  replicas: 1
-  selector:
-    matchLabels:
-      app: zookeeper
-  template:
-    metadata:
-      labels:
-        app: zookeeper
-      annotations:
-        cni: "calico"
-    spec:
-      containers:
-      - name: zoo
-        image: zookeeper:3.4.11
-        ports:
-        - containerPort: 2181
-        - containerPort: 2888
-        - containerPort: 3888
-        env:
-        - name: NAMESPACE
-          valueFrom:
-            fieldRef:
-              fieldPath: metadata.namespace
-        - name: ZOO_MY_ID
-          value: "1"
-#        - name: ZOO_SERVERS
-#          value: >
-#            server.1=zookeeper1-0.zoo1.$(NAMESPACE).svc.cluster.local:2888:3888
-
diff --git a/k8s/zookeeper.yml b/k8s/zookeeper.yml
deleted file mode 100644
index 5760f0d..0000000
--- a/k8s/zookeeper.yml
+++ /dev/null
@@ -1,196 +0,0 @@
-# Copyright 2019-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Service
-metadata:
-  name: zoo1
-  namespace: voltha
-spec:
-  clusterIP: None
-  selector:
-    app: zookeeper-1
-  ports:
-  - name: client
-    port: 2181
-    targetPort: 2181
-  - name: follower
-    port: 2888
-    targetPort: 2888
-  - name: leader
-    port: 3888
-    targetPort: 3888
----
-apiVersion: v1
-kind: Service
-metadata:
-  name: zoo2
-  namespace: voltha
-spec:
-  clusterIP: None
-  selector:
-    app: zookeeper-2
-  ports:
-  - name: client
-    port: 2181
-    targetPort: 2181
-  - name: follower
-    port: 2888
-    targetPort: 2888
-  - name: leader
-    port: 3888
-    targetPort: 3888
----
-apiVersion: v1
-kind: Service
-metadata:
-  name: zoo3
-  namespace: voltha
-spec:
-  clusterIP: None
-  selector:
-    app: zookeeper-3
-  ports:
-  - name: client
-    port: 2181
-    targetPort: 2181
-  - name: follower
-    port: 2888
-    targetPort: 2888
-  - name: leader
-    port: 3888
-    targetPort: 3888
----
-apiVersion: apps/v1beta1
-kind: StatefulSet
-metadata:
-  name: zookeeper1
-  namespace: voltha
-spec:
-  serviceName: zoo1
-  replicas: 1
-  updateStrategy:
-    type: RollingUpdate
-  selector:
-    matchLabels:
-      app: zookeeper-1
-  template:
-    metadata:
-      labels:
-        app: zookeeper-1
-      annotations:
-        cni: "calico"
-    spec:
-      terminationGracePeriodSeconds: 0
-      containers:
-      - name: zoo1
-        image: zookeeper:3.4.11
-        ports:
-        - containerPort: 2181
-        - containerPort: 2888
-        - containerPort: 3888
-        env:
-        - name: NAMESPACE
-          valueFrom:
-            fieldRef:
-              fieldPath: metadata.namespace
-        - name: ZOO_MY_ID
-          value: "1"
-        - name: ZOO_SERVERS
-          value: >
-            server.1=zookeeper1-0.zoo1.$(NAMESPACE).svc.cluster.local:2888:3888
-            server.2=zookeeper2-0.zoo2.$(NAMESPACE).svc.cluster.local:2888:3888
-            server.3=zookeeper3-0.zoo3.$(NAMESPACE).svc.cluster.local:2888:3888
----
-apiVersion: apps/v1beta1
-kind: StatefulSet
-metadata:
-  name: zookeeper2
-  namespace: voltha
-spec:
-  serviceName: zoo2
-  replicas: 1
-  updateStrategy:
-    type: RollingUpdate
-  selector:
-    matchLabels:
-      app: zookeeper-2
-  template:
-    metadata:
-      labels:
-        app: zookeeper-2
-      annotations:
-        cni: "calico"
-    spec:
-      terminationGracePeriodSeconds: 0
-      containers:
-      - name: zoo2
-        image: zookeeper:3.4.11
-        ports:
-        - containerPort: 2181
-        - containerPort: 2888
-        - containerPort: 3888
-        env:
-        - name: NAMESPACE
-          valueFrom:
-            fieldRef:
-              fieldPath: metadata.namespace
-        - name: ZOO_MY_ID
-          value: "2"
-        - name: ZOO_SERVERS
-          value: >
-            server.1=zookeeper1-0.zoo1.$(NAMESPACE).svc.cluster.local:2888:3888
-            server.2=zookeeper2-0.zoo2.$(NAMESPACE).svc.cluster.local:2888:3888
-            server.3=zookeeper3-0.zoo3.$(NAMESPACE).svc.cluster.local:2888:3888
----
-apiVersion: apps/v1beta1
-kind: StatefulSet
-metadata:
-  name: zookeeper3
-  namespace: voltha
-spec:
-  serviceName: zoo3
-  replicas: 1
-  updateStrategy:
-    type: RollingUpdate
-  selector:
-    matchLabels:
-      app: zookeeper-3
-  template:
-    metadata:
-      labels:
-        app: zookeeper-3
-      annotations:
-        cni: "calico"
-    spec:
-      terminationGracePeriodSeconds: 0
-      containers:
-      - name: zoo3
-        image: zookeeper:3.4.11
-        ports:
-        - containerPort: 2181
-        - containerPort: 2888
-        - containerPort: 3888
-        env:
-        - name: NAMESPACE
-          valueFrom:
-            fieldRef:
-              fieldPath: metadata.namespace
-        - name: ZOO_MY_ID
-          value: "3"
-        - name: ZOO_SERVERS
-          value: >
-            server.1=zookeeper1-0.zoo1.$(NAMESPACE).svc.cluster.local:2888:3888
-            server.2=zookeeper2-0.zoo2.$(NAMESPACE).svc.cluster.local:2888:3888
-            server.3=zookeeper3-0.zoo3.$(NAMESPACE).svc.cluster.local:2888:3888
